package com.wocai.jrt.orgadmin.enterprise.model;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

public class FinancialAssetsLiabilitiesBean {
    /**
     * order by 排序语句
     * 对应数据库表字段 financial_assets_liabilities
     */
    private String orderBy;

    /**
     * 分页开始记录
     * 对应数据库表字段 financial_assets_liabilities
     */
    private Integer start;

    /**
     * 分页大小
     * 对应数据库表字段 financial_assets_liabilities
     */
    private int pageSize = 10;

    /**
     * 是否指定 distinct 去除重复
     * 对应数据库表字段 financial_assets_liabilities
     */
    private boolean distinct;

    /**
     * 逻辑or语句
     * 对应数据库表字段 financial_assets_liabilities
     */
    private List<Criteria> oredCriteria;

    /**
     */
    public FinancialAssetsLiabilitiesBean() {
        oredCriteria = new ArrayList<Criteria>();
    }

    /**
     * 设置 order by 排序语句
     */
    public void setOrderBy(String orderBy) {
        this.orderBy = orderBy;
    }

    /**
     * 获得 order by 排序语句
     */
    public String getOrderBy() {
        return orderBy;
    }

    /**
     * 设置 start，分页开始记录
     */
    public void setStart(Integer start) {
        this.start = start;
    }

    /**
     * 获得 start，分页开始记录
     */
    public Integer getStart() {
        return start;
    }

    /**
     * 设置 pageSize，分页大小
     */
    public void setPageSize(int pageSize) {
        this.pageSize = pageSize;
    }

    /**
     * 获得 pageSize，分页大小
     */
    public int getPageSize() {
        return pageSize;
    }

    /**
     * 设置是否指定 distinct 去除重复
     */
    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    /**
     * 是否设置了distinct语句，true是，false否。
     */
    public boolean isDistinct() {
        return distinct;
    }

    /**
     * 获得逻辑or语句
     */
    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    /**
     * 添加逻辑or语句
     */
    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    /**
     * 添加逻辑and语句
     */
    public void and(Criteria criteria) {
        criteria.setAndRelation(true);
        oredCriteria.add(criteria);
    }

    /**
     * 新建逻辑或or语句
     */
    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    /**
     * 新建逻辑and语句
     */
    public Criteria and() {
        Criteria criteria = createCriteriaInternal();
        criteria.setAndRelation(true);
        oredCriteria.add(criteria);
        return criteria;
    }

    /**
     * 创建查询条件，如果逻辑或为空，同时将查询条件放入。
     */
    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    /**
     * 创建新查询条件。
     */
    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    /**
     * 清除逻辑或or语句，并且distinct为false，不去重。
     */
    public void clear() {
        oredCriteria.clear();
    }

    /**
     * 该类对应数据库表 financial_assets_liabilities
     */
    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void orCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition, true));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void orCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value, true));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        protected void orCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2, true));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria orIdIsNull() {
            orCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria orIdIsNotNull() {
            orCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria orIdEqualTo(String value) {
            orCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria orIdNotEqualTo(String value) {
            orCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria orIdGreaterThan(String value) {
            orCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria orIdGreaterThanOrEqualTo(String value) {
            orCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria orIdLessThan(String value) {
            orCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria orIdLessThanOrEqualTo(String value) {
            orCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("id like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("id not like", value, "id");
            return (Criteria) this;
        }

        public Criteria orIdLike(String value) {
            orCriterion("id like", value, "id");
            return (Criteria) this;
        }

        public Criteria orIdNotLike(String value) {
            orCriterion("id not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria orIdIn(List<String> values) {
            orCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria orIdNotIn(List<String> values) {
            orCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria orIdBetween(String value1, String value2) {
            orCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria orIdNotBetween(String value1, String value2) {
            orCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andFinancialReportIdIsNull() {
            addCriterion("financial_report_id is null");
            return (Criteria) this;
        }

        public Criteria andFinancialReportIdIsNotNull() {
            addCriterion("financial_report_id is not null");
            return (Criteria) this;
        }

        public Criteria andFinancialReportIdEqualTo(String value) {
            addCriterion("financial_report_id =", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria andFinancialReportIdNotEqualTo(String value) {
            addCriterion("financial_report_id <>", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria andFinancialReportIdGreaterThan(String value) {
            addCriterion("financial_report_id >", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria andFinancialReportIdGreaterThanOrEqualTo(String value) {
            addCriterion("financial_report_id >=", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria andFinancialReportIdLessThan(String value) {
            addCriterion("financial_report_id <", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria andFinancialReportIdLessThanOrEqualTo(String value) {
            addCriterion("financial_report_id <=", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria orFinancialReportIdIsNull() {
            orCriterion("financial_report_id is null");
            return (Criteria) this;
        }

        public Criteria orFinancialReportIdIsNotNull() {
            orCriterion("financial_report_id is not null");
            return (Criteria) this;
        }

        public Criteria orFinancialReportIdEqualTo(String value) {
            orCriterion("financial_report_id =", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria orFinancialReportIdNotEqualTo(String value) {
            orCriterion("financial_report_id <>", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria orFinancialReportIdGreaterThan(String value) {
            orCriterion("financial_report_id >", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria orFinancialReportIdGreaterThanOrEqualTo(String value) {
            orCriterion("financial_report_id >=", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria orFinancialReportIdLessThan(String value) {
            orCriterion("financial_report_id <", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria orFinancialReportIdLessThanOrEqualTo(String value) {
            orCriterion("financial_report_id <=", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria andFinancialReportIdLike(String value) {
            addCriterion("financial_report_id like", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria andFinancialReportIdNotLike(String value) {
            addCriterion("financial_report_id not like", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria orFinancialReportIdLike(String value) {
            orCriterion("financial_report_id like", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria orFinancialReportIdNotLike(String value) {
            orCriterion("financial_report_id not like", value, "financialReportId");
            return (Criteria) this;
        }

        public Criteria andFinancialReportIdIn(List<String> values) {
            addCriterion("financial_report_id in", values, "financialReportId");
            return (Criteria) this;
        }

        public Criteria andFinancialReportIdNotIn(List<String> values) {
            addCriterion("financial_report_id not in", values, "financialReportId");
            return (Criteria) this;
        }

        public Criteria andFinancialReportIdBetween(String value1, String value2) {
            addCriterion("financial_report_id between", value1, value2, "financialReportId");
            return (Criteria) this;
        }

        public Criteria andFinancialReportIdNotBetween(String value1, String value2) {
            addCriterion("financial_report_id not between", value1, value2, "financialReportId");
            return (Criteria) this;
        }

        public Criteria orFinancialReportIdIn(List<String> values) {
            orCriterion("financial_report_id in", values, "financialReportId");
            return (Criteria) this;
        }

        public Criteria orFinancialReportIdNotIn(List<String> values) {
            orCriterion("financial_report_id not in", values, "financialReportId");
            return (Criteria) this;
        }

        public Criteria orFinancialReportIdBetween(String value1, String value2) {
            orCriterion("financial_report_id between", value1, value2, "financialReportId");
            return (Criteria) this;
        }

        public Criteria orFinancialReportIdNotBetween(String value1, String value2) {
            orCriterion("financial_report_id not between", value1, value2, "financialReportId");
            return (Criteria) this;
        }

        public Criteria andLine1StartIsNull() {
            addCriterion("line1_start is null");
            return (Criteria) this;
        }

        public Criteria andLine1StartIsNotNull() {
            addCriterion("line1_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine1StartEqualTo(BigDecimal value) {
            addCriterion("line1_start =", value, "line1Start");
            return (Criteria) this;
        }

        public Criteria andLine1StartNotEqualTo(BigDecimal value) {
            addCriterion("line1_start <>", value, "line1Start");
            return (Criteria) this;
        }

        public Criteria andLine1StartGreaterThan(BigDecimal value) {
            addCriterion("line1_start >", value, "line1Start");
            return (Criteria) this;
        }

        public Criteria andLine1StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line1_start >=", value, "line1Start");
            return (Criteria) this;
        }

        public Criteria andLine1StartLessThan(BigDecimal value) {
            addCriterion("line1_start <", value, "line1Start");
            return (Criteria) this;
        }

        public Criteria andLine1StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line1_start <=", value, "line1Start");
            return (Criteria) this;
        }

        public Criteria orLine1StartIsNull() {
            orCriterion("line1_start is null");
            return (Criteria) this;
        }

        public Criteria orLine1StartIsNotNull() {
            orCriterion("line1_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine1StartEqualTo(BigDecimal value) {
            orCriterion("line1_start =", value, "line1Start");
            return (Criteria) this;
        }

        public Criteria orLine1StartNotEqualTo(BigDecimal value) {
            orCriterion("line1_start <>", value, "line1Start");
            return (Criteria) this;
        }

        public Criteria orLine1StartGreaterThan(BigDecimal value) {
            orCriterion("line1_start >", value, "line1Start");
            return (Criteria) this;
        }

        public Criteria orLine1StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line1_start >=", value, "line1Start");
            return (Criteria) this;
        }

        public Criteria orLine1StartLessThan(BigDecimal value) {
            orCriterion("line1_start <", value, "line1Start");
            return (Criteria) this;
        }

        public Criteria orLine1StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line1_start <=", value, "line1Start");
            return (Criteria) this;
        }

        public Criteria andLine1StartIn(List<BigDecimal> values) {
            addCriterion("line1_start in", values, "line1Start");
            return (Criteria) this;
        }

        public Criteria andLine1StartNotIn(List<BigDecimal> values) {
            addCriterion("line1_start not in", values, "line1Start");
            return (Criteria) this;
        }

        public Criteria andLine1StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line1_start between", value1, value2, "line1Start");
            return (Criteria) this;
        }

        public Criteria andLine1StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line1_start not between", value1, value2, "line1Start");
            return (Criteria) this;
        }

        public Criteria orLine1StartIn(List<BigDecimal> values) {
            orCriterion("line1_start in", values, "line1Start");
            return (Criteria) this;
        }

        public Criteria orLine1StartNotIn(List<BigDecimal> values) {
            orCriterion("line1_start not in", values, "line1Start");
            return (Criteria) this;
        }

        public Criteria orLine1StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line1_start between", value1, value2, "line1Start");
            return (Criteria) this;
        }

        public Criteria orLine1StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line1_start not between", value1, value2, "line1Start");
            return (Criteria) this;
        }

        public Criteria andLine1EndIsNull() {
            addCriterion("line1_end is null");
            return (Criteria) this;
        }

        public Criteria andLine1EndIsNotNull() {
            addCriterion("line1_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine1EndEqualTo(BigDecimal value) {
            addCriterion("line1_end =", value, "line1End");
            return (Criteria) this;
        }

        public Criteria andLine1EndNotEqualTo(BigDecimal value) {
            addCriterion("line1_end <>", value, "line1End");
            return (Criteria) this;
        }

        public Criteria andLine1EndGreaterThan(BigDecimal value) {
            addCriterion("line1_end >", value, "line1End");
            return (Criteria) this;
        }

        public Criteria andLine1EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line1_end >=", value, "line1End");
            return (Criteria) this;
        }

        public Criteria andLine1EndLessThan(BigDecimal value) {
            addCriterion("line1_end <", value, "line1End");
            return (Criteria) this;
        }

        public Criteria andLine1EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line1_end <=", value, "line1End");
            return (Criteria) this;
        }

        public Criteria orLine1EndIsNull() {
            orCriterion("line1_end is null");
            return (Criteria) this;
        }

        public Criteria orLine1EndIsNotNull() {
            orCriterion("line1_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine1EndEqualTo(BigDecimal value) {
            orCriterion("line1_end =", value, "line1End");
            return (Criteria) this;
        }

        public Criteria orLine1EndNotEqualTo(BigDecimal value) {
            orCriterion("line1_end <>", value, "line1End");
            return (Criteria) this;
        }

        public Criteria orLine1EndGreaterThan(BigDecimal value) {
            orCriterion("line1_end >", value, "line1End");
            return (Criteria) this;
        }

        public Criteria orLine1EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line1_end >=", value, "line1End");
            return (Criteria) this;
        }

        public Criteria orLine1EndLessThan(BigDecimal value) {
            orCriterion("line1_end <", value, "line1End");
            return (Criteria) this;
        }

        public Criteria orLine1EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line1_end <=", value, "line1End");
            return (Criteria) this;
        }

        public Criteria andLine1EndIn(List<BigDecimal> values) {
            addCriterion("line1_end in", values, "line1End");
            return (Criteria) this;
        }

        public Criteria andLine1EndNotIn(List<BigDecimal> values) {
            addCriterion("line1_end not in", values, "line1End");
            return (Criteria) this;
        }

        public Criteria andLine1EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line1_end between", value1, value2, "line1End");
            return (Criteria) this;
        }

        public Criteria andLine1EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line1_end not between", value1, value2, "line1End");
            return (Criteria) this;
        }

        public Criteria orLine1EndIn(List<BigDecimal> values) {
            orCriterion("line1_end in", values, "line1End");
            return (Criteria) this;
        }

        public Criteria orLine1EndNotIn(List<BigDecimal> values) {
            orCriterion("line1_end not in", values, "line1End");
            return (Criteria) this;
        }

        public Criteria orLine1EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line1_end between", value1, value2, "line1End");
            return (Criteria) this;
        }

        public Criteria orLine1EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line1_end not between", value1, value2, "line1End");
            return (Criteria) this;
        }

        public Criteria andLine2StartIsNull() {
            addCriterion("line2_start is null");
            return (Criteria) this;
        }

        public Criteria andLine2StartIsNotNull() {
            addCriterion("line2_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine2StartEqualTo(BigDecimal value) {
            addCriterion("line2_start =", value, "line2Start");
            return (Criteria) this;
        }

        public Criteria andLine2StartNotEqualTo(BigDecimal value) {
            addCriterion("line2_start <>", value, "line2Start");
            return (Criteria) this;
        }

        public Criteria andLine2StartGreaterThan(BigDecimal value) {
            addCriterion("line2_start >", value, "line2Start");
            return (Criteria) this;
        }

        public Criteria andLine2StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line2_start >=", value, "line2Start");
            return (Criteria) this;
        }

        public Criteria andLine2StartLessThan(BigDecimal value) {
            addCriterion("line2_start <", value, "line2Start");
            return (Criteria) this;
        }

        public Criteria andLine2StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line2_start <=", value, "line2Start");
            return (Criteria) this;
        }

        public Criteria orLine2StartIsNull() {
            orCriterion("line2_start is null");
            return (Criteria) this;
        }

        public Criteria orLine2StartIsNotNull() {
            orCriterion("line2_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine2StartEqualTo(BigDecimal value) {
            orCriterion("line2_start =", value, "line2Start");
            return (Criteria) this;
        }

        public Criteria orLine2StartNotEqualTo(BigDecimal value) {
            orCriterion("line2_start <>", value, "line2Start");
            return (Criteria) this;
        }

        public Criteria orLine2StartGreaterThan(BigDecimal value) {
            orCriterion("line2_start >", value, "line2Start");
            return (Criteria) this;
        }

        public Criteria orLine2StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line2_start >=", value, "line2Start");
            return (Criteria) this;
        }

        public Criteria orLine2StartLessThan(BigDecimal value) {
            orCriterion("line2_start <", value, "line2Start");
            return (Criteria) this;
        }

        public Criteria orLine2StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line2_start <=", value, "line2Start");
            return (Criteria) this;
        }

        public Criteria andLine2StartIn(List<BigDecimal> values) {
            addCriterion("line2_start in", values, "line2Start");
            return (Criteria) this;
        }

        public Criteria andLine2StartNotIn(List<BigDecimal> values) {
            addCriterion("line2_start not in", values, "line2Start");
            return (Criteria) this;
        }

        public Criteria andLine2StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line2_start between", value1, value2, "line2Start");
            return (Criteria) this;
        }

        public Criteria andLine2StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line2_start not between", value1, value2, "line2Start");
            return (Criteria) this;
        }

        public Criteria orLine2StartIn(List<BigDecimal> values) {
            orCriterion("line2_start in", values, "line2Start");
            return (Criteria) this;
        }

        public Criteria orLine2StartNotIn(List<BigDecimal> values) {
            orCriterion("line2_start not in", values, "line2Start");
            return (Criteria) this;
        }

        public Criteria orLine2StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line2_start between", value1, value2, "line2Start");
            return (Criteria) this;
        }

        public Criteria orLine2StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line2_start not between", value1, value2, "line2Start");
            return (Criteria) this;
        }

        public Criteria andLine2EndIsNull() {
            addCriterion("line2_end is null");
            return (Criteria) this;
        }

        public Criteria andLine2EndIsNotNull() {
            addCriterion("line2_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine2EndEqualTo(BigDecimal value) {
            addCriterion("line2_end =", value, "line2End");
            return (Criteria) this;
        }

        public Criteria andLine2EndNotEqualTo(BigDecimal value) {
            addCriterion("line2_end <>", value, "line2End");
            return (Criteria) this;
        }

        public Criteria andLine2EndGreaterThan(BigDecimal value) {
            addCriterion("line2_end >", value, "line2End");
            return (Criteria) this;
        }

        public Criteria andLine2EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line2_end >=", value, "line2End");
            return (Criteria) this;
        }

        public Criteria andLine2EndLessThan(BigDecimal value) {
            addCriterion("line2_end <", value, "line2End");
            return (Criteria) this;
        }

        public Criteria andLine2EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line2_end <=", value, "line2End");
            return (Criteria) this;
        }

        public Criteria orLine2EndIsNull() {
            orCriterion("line2_end is null");
            return (Criteria) this;
        }

        public Criteria orLine2EndIsNotNull() {
            orCriterion("line2_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine2EndEqualTo(BigDecimal value) {
            orCriterion("line2_end =", value, "line2End");
            return (Criteria) this;
        }

        public Criteria orLine2EndNotEqualTo(BigDecimal value) {
            orCriterion("line2_end <>", value, "line2End");
            return (Criteria) this;
        }

        public Criteria orLine2EndGreaterThan(BigDecimal value) {
            orCriterion("line2_end >", value, "line2End");
            return (Criteria) this;
        }

        public Criteria orLine2EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line2_end >=", value, "line2End");
            return (Criteria) this;
        }

        public Criteria orLine2EndLessThan(BigDecimal value) {
            orCriterion("line2_end <", value, "line2End");
            return (Criteria) this;
        }

        public Criteria orLine2EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line2_end <=", value, "line2End");
            return (Criteria) this;
        }

        public Criteria andLine2EndIn(List<BigDecimal> values) {
            addCriterion("line2_end in", values, "line2End");
            return (Criteria) this;
        }

        public Criteria andLine2EndNotIn(List<BigDecimal> values) {
            addCriterion("line2_end not in", values, "line2End");
            return (Criteria) this;
        }

        public Criteria andLine2EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line2_end between", value1, value2, "line2End");
            return (Criteria) this;
        }

        public Criteria andLine2EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line2_end not between", value1, value2, "line2End");
            return (Criteria) this;
        }

        public Criteria orLine2EndIn(List<BigDecimal> values) {
            orCriterion("line2_end in", values, "line2End");
            return (Criteria) this;
        }

        public Criteria orLine2EndNotIn(List<BigDecimal> values) {
            orCriterion("line2_end not in", values, "line2End");
            return (Criteria) this;
        }

        public Criteria orLine2EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line2_end between", value1, value2, "line2End");
            return (Criteria) this;
        }

        public Criteria orLine2EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line2_end not between", value1, value2, "line2End");
            return (Criteria) this;
        }

        public Criteria andLine3StartIsNull() {
            addCriterion("line3_start is null");
            return (Criteria) this;
        }

        public Criteria andLine3StartIsNotNull() {
            addCriterion("line3_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine3StartEqualTo(BigDecimal value) {
            addCriterion("line3_start =", value, "line3Start");
            return (Criteria) this;
        }

        public Criteria andLine3StartNotEqualTo(BigDecimal value) {
            addCriterion("line3_start <>", value, "line3Start");
            return (Criteria) this;
        }

        public Criteria andLine3StartGreaterThan(BigDecimal value) {
            addCriterion("line3_start >", value, "line3Start");
            return (Criteria) this;
        }

        public Criteria andLine3StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line3_start >=", value, "line3Start");
            return (Criteria) this;
        }

        public Criteria andLine3StartLessThan(BigDecimal value) {
            addCriterion("line3_start <", value, "line3Start");
            return (Criteria) this;
        }

        public Criteria andLine3StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line3_start <=", value, "line3Start");
            return (Criteria) this;
        }

        public Criteria orLine3StartIsNull() {
            orCriterion("line3_start is null");
            return (Criteria) this;
        }

        public Criteria orLine3StartIsNotNull() {
            orCriterion("line3_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine3StartEqualTo(BigDecimal value) {
            orCriterion("line3_start =", value, "line3Start");
            return (Criteria) this;
        }

        public Criteria orLine3StartNotEqualTo(BigDecimal value) {
            orCriterion("line3_start <>", value, "line3Start");
            return (Criteria) this;
        }

        public Criteria orLine3StartGreaterThan(BigDecimal value) {
            orCriterion("line3_start >", value, "line3Start");
            return (Criteria) this;
        }

        public Criteria orLine3StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line3_start >=", value, "line3Start");
            return (Criteria) this;
        }

        public Criteria orLine3StartLessThan(BigDecimal value) {
            orCriterion("line3_start <", value, "line3Start");
            return (Criteria) this;
        }

        public Criteria orLine3StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line3_start <=", value, "line3Start");
            return (Criteria) this;
        }

        public Criteria andLine3StartIn(List<BigDecimal> values) {
            addCriterion("line3_start in", values, "line3Start");
            return (Criteria) this;
        }

        public Criteria andLine3StartNotIn(List<BigDecimal> values) {
            addCriterion("line3_start not in", values, "line3Start");
            return (Criteria) this;
        }

        public Criteria andLine3StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line3_start between", value1, value2, "line3Start");
            return (Criteria) this;
        }

        public Criteria andLine3StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line3_start not between", value1, value2, "line3Start");
            return (Criteria) this;
        }

        public Criteria orLine3StartIn(List<BigDecimal> values) {
            orCriterion("line3_start in", values, "line3Start");
            return (Criteria) this;
        }

        public Criteria orLine3StartNotIn(List<BigDecimal> values) {
            orCriterion("line3_start not in", values, "line3Start");
            return (Criteria) this;
        }

        public Criteria orLine3StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line3_start between", value1, value2, "line3Start");
            return (Criteria) this;
        }

        public Criteria orLine3StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line3_start not between", value1, value2, "line3Start");
            return (Criteria) this;
        }

        public Criteria andLine3EndIsNull() {
            addCriterion("line3_end is null");
            return (Criteria) this;
        }

        public Criteria andLine3EndIsNotNull() {
            addCriterion("line3_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine3EndEqualTo(BigDecimal value) {
            addCriterion("line3_end =", value, "line3End");
            return (Criteria) this;
        }

        public Criteria andLine3EndNotEqualTo(BigDecimal value) {
            addCriterion("line3_end <>", value, "line3End");
            return (Criteria) this;
        }

        public Criteria andLine3EndGreaterThan(BigDecimal value) {
            addCriterion("line3_end >", value, "line3End");
            return (Criteria) this;
        }

        public Criteria andLine3EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line3_end >=", value, "line3End");
            return (Criteria) this;
        }

        public Criteria andLine3EndLessThan(BigDecimal value) {
            addCriterion("line3_end <", value, "line3End");
            return (Criteria) this;
        }

        public Criteria andLine3EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line3_end <=", value, "line3End");
            return (Criteria) this;
        }

        public Criteria orLine3EndIsNull() {
            orCriterion("line3_end is null");
            return (Criteria) this;
        }

        public Criteria orLine3EndIsNotNull() {
            orCriterion("line3_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine3EndEqualTo(BigDecimal value) {
            orCriterion("line3_end =", value, "line3End");
            return (Criteria) this;
        }

        public Criteria orLine3EndNotEqualTo(BigDecimal value) {
            orCriterion("line3_end <>", value, "line3End");
            return (Criteria) this;
        }

        public Criteria orLine3EndGreaterThan(BigDecimal value) {
            orCriterion("line3_end >", value, "line3End");
            return (Criteria) this;
        }

        public Criteria orLine3EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line3_end >=", value, "line3End");
            return (Criteria) this;
        }

        public Criteria orLine3EndLessThan(BigDecimal value) {
            orCriterion("line3_end <", value, "line3End");
            return (Criteria) this;
        }

        public Criteria orLine3EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line3_end <=", value, "line3End");
            return (Criteria) this;
        }

        public Criteria andLine3EndIn(List<BigDecimal> values) {
            addCriterion("line3_end in", values, "line3End");
            return (Criteria) this;
        }

        public Criteria andLine3EndNotIn(List<BigDecimal> values) {
            addCriterion("line3_end not in", values, "line3End");
            return (Criteria) this;
        }

        public Criteria andLine3EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line3_end between", value1, value2, "line3End");
            return (Criteria) this;
        }

        public Criteria andLine3EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line3_end not between", value1, value2, "line3End");
            return (Criteria) this;
        }

        public Criteria orLine3EndIn(List<BigDecimal> values) {
            orCriterion("line3_end in", values, "line3End");
            return (Criteria) this;
        }

        public Criteria orLine3EndNotIn(List<BigDecimal> values) {
            orCriterion("line3_end not in", values, "line3End");
            return (Criteria) this;
        }

        public Criteria orLine3EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line3_end between", value1, value2, "line3End");
            return (Criteria) this;
        }

        public Criteria orLine3EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line3_end not between", value1, value2, "line3End");
            return (Criteria) this;
        }

        public Criteria andLine4StartIsNull() {
            addCriterion("line4_start is null");
            return (Criteria) this;
        }

        public Criteria andLine4StartIsNotNull() {
            addCriterion("line4_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine4StartEqualTo(BigDecimal value) {
            addCriterion("line4_start =", value, "line4Start");
            return (Criteria) this;
        }

        public Criteria andLine4StartNotEqualTo(BigDecimal value) {
            addCriterion("line4_start <>", value, "line4Start");
            return (Criteria) this;
        }

        public Criteria andLine4StartGreaterThan(BigDecimal value) {
            addCriterion("line4_start >", value, "line4Start");
            return (Criteria) this;
        }

        public Criteria andLine4StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line4_start >=", value, "line4Start");
            return (Criteria) this;
        }

        public Criteria andLine4StartLessThan(BigDecimal value) {
            addCriterion("line4_start <", value, "line4Start");
            return (Criteria) this;
        }

        public Criteria andLine4StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line4_start <=", value, "line4Start");
            return (Criteria) this;
        }

        public Criteria orLine4StartIsNull() {
            orCriterion("line4_start is null");
            return (Criteria) this;
        }

        public Criteria orLine4StartIsNotNull() {
            orCriterion("line4_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine4StartEqualTo(BigDecimal value) {
            orCriterion("line4_start =", value, "line4Start");
            return (Criteria) this;
        }

        public Criteria orLine4StartNotEqualTo(BigDecimal value) {
            orCriterion("line4_start <>", value, "line4Start");
            return (Criteria) this;
        }

        public Criteria orLine4StartGreaterThan(BigDecimal value) {
            orCriterion("line4_start >", value, "line4Start");
            return (Criteria) this;
        }

        public Criteria orLine4StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line4_start >=", value, "line4Start");
            return (Criteria) this;
        }

        public Criteria orLine4StartLessThan(BigDecimal value) {
            orCriterion("line4_start <", value, "line4Start");
            return (Criteria) this;
        }

        public Criteria orLine4StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line4_start <=", value, "line4Start");
            return (Criteria) this;
        }

        public Criteria andLine4StartIn(List<BigDecimal> values) {
            addCriterion("line4_start in", values, "line4Start");
            return (Criteria) this;
        }

        public Criteria andLine4StartNotIn(List<BigDecimal> values) {
            addCriterion("line4_start not in", values, "line4Start");
            return (Criteria) this;
        }

        public Criteria andLine4StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line4_start between", value1, value2, "line4Start");
            return (Criteria) this;
        }

        public Criteria andLine4StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line4_start not between", value1, value2, "line4Start");
            return (Criteria) this;
        }

        public Criteria orLine4StartIn(List<BigDecimal> values) {
            orCriterion("line4_start in", values, "line4Start");
            return (Criteria) this;
        }

        public Criteria orLine4StartNotIn(List<BigDecimal> values) {
            orCriterion("line4_start not in", values, "line4Start");
            return (Criteria) this;
        }

        public Criteria orLine4StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line4_start between", value1, value2, "line4Start");
            return (Criteria) this;
        }

        public Criteria orLine4StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line4_start not between", value1, value2, "line4Start");
            return (Criteria) this;
        }

        public Criteria andLine4EndIsNull() {
            addCriterion("line4_end is null");
            return (Criteria) this;
        }

        public Criteria andLine4EndIsNotNull() {
            addCriterion("line4_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine4EndEqualTo(BigDecimal value) {
            addCriterion("line4_end =", value, "line4End");
            return (Criteria) this;
        }

        public Criteria andLine4EndNotEqualTo(BigDecimal value) {
            addCriterion("line4_end <>", value, "line4End");
            return (Criteria) this;
        }

        public Criteria andLine4EndGreaterThan(BigDecimal value) {
            addCriterion("line4_end >", value, "line4End");
            return (Criteria) this;
        }

        public Criteria andLine4EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line4_end >=", value, "line4End");
            return (Criteria) this;
        }

        public Criteria andLine4EndLessThan(BigDecimal value) {
            addCriterion("line4_end <", value, "line4End");
            return (Criteria) this;
        }

        public Criteria andLine4EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line4_end <=", value, "line4End");
            return (Criteria) this;
        }

        public Criteria orLine4EndIsNull() {
            orCriterion("line4_end is null");
            return (Criteria) this;
        }

        public Criteria orLine4EndIsNotNull() {
            orCriterion("line4_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine4EndEqualTo(BigDecimal value) {
            orCriterion("line4_end =", value, "line4End");
            return (Criteria) this;
        }

        public Criteria orLine4EndNotEqualTo(BigDecimal value) {
            orCriterion("line4_end <>", value, "line4End");
            return (Criteria) this;
        }

        public Criteria orLine4EndGreaterThan(BigDecimal value) {
            orCriterion("line4_end >", value, "line4End");
            return (Criteria) this;
        }

        public Criteria orLine4EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line4_end >=", value, "line4End");
            return (Criteria) this;
        }

        public Criteria orLine4EndLessThan(BigDecimal value) {
            orCriterion("line4_end <", value, "line4End");
            return (Criteria) this;
        }

        public Criteria orLine4EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line4_end <=", value, "line4End");
            return (Criteria) this;
        }

        public Criteria andLine4EndIn(List<BigDecimal> values) {
            addCriterion("line4_end in", values, "line4End");
            return (Criteria) this;
        }

        public Criteria andLine4EndNotIn(List<BigDecimal> values) {
            addCriterion("line4_end not in", values, "line4End");
            return (Criteria) this;
        }

        public Criteria andLine4EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line4_end between", value1, value2, "line4End");
            return (Criteria) this;
        }

        public Criteria andLine4EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line4_end not between", value1, value2, "line4End");
            return (Criteria) this;
        }

        public Criteria orLine4EndIn(List<BigDecimal> values) {
            orCriterion("line4_end in", values, "line4End");
            return (Criteria) this;
        }

        public Criteria orLine4EndNotIn(List<BigDecimal> values) {
            orCriterion("line4_end not in", values, "line4End");
            return (Criteria) this;
        }

        public Criteria orLine4EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line4_end between", value1, value2, "line4End");
            return (Criteria) this;
        }

        public Criteria orLine4EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line4_end not between", value1, value2, "line4End");
            return (Criteria) this;
        }

        public Criteria andLine5StartIsNull() {
            addCriterion("line5_start is null");
            return (Criteria) this;
        }

        public Criteria andLine5StartIsNotNull() {
            addCriterion("line5_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine5StartEqualTo(BigDecimal value) {
            addCriterion("line5_start =", value, "line5Start");
            return (Criteria) this;
        }

        public Criteria andLine5StartNotEqualTo(BigDecimal value) {
            addCriterion("line5_start <>", value, "line5Start");
            return (Criteria) this;
        }

        public Criteria andLine5StartGreaterThan(BigDecimal value) {
            addCriterion("line5_start >", value, "line5Start");
            return (Criteria) this;
        }

        public Criteria andLine5StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line5_start >=", value, "line5Start");
            return (Criteria) this;
        }

        public Criteria andLine5StartLessThan(BigDecimal value) {
            addCriterion("line5_start <", value, "line5Start");
            return (Criteria) this;
        }

        public Criteria andLine5StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line5_start <=", value, "line5Start");
            return (Criteria) this;
        }

        public Criteria orLine5StartIsNull() {
            orCriterion("line5_start is null");
            return (Criteria) this;
        }

        public Criteria orLine5StartIsNotNull() {
            orCriterion("line5_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine5StartEqualTo(BigDecimal value) {
            orCriterion("line5_start =", value, "line5Start");
            return (Criteria) this;
        }

        public Criteria orLine5StartNotEqualTo(BigDecimal value) {
            orCriterion("line5_start <>", value, "line5Start");
            return (Criteria) this;
        }

        public Criteria orLine5StartGreaterThan(BigDecimal value) {
            orCriterion("line5_start >", value, "line5Start");
            return (Criteria) this;
        }

        public Criteria orLine5StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line5_start >=", value, "line5Start");
            return (Criteria) this;
        }

        public Criteria orLine5StartLessThan(BigDecimal value) {
            orCriterion("line5_start <", value, "line5Start");
            return (Criteria) this;
        }

        public Criteria orLine5StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line5_start <=", value, "line5Start");
            return (Criteria) this;
        }

        public Criteria andLine5StartIn(List<BigDecimal> values) {
            addCriterion("line5_start in", values, "line5Start");
            return (Criteria) this;
        }

        public Criteria andLine5StartNotIn(List<BigDecimal> values) {
            addCriterion("line5_start not in", values, "line5Start");
            return (Criteria) this;
        }

        public Criteria andLine5StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line5_start between", value1, value2, "line5Start");
            return (Criteria) this;
        }

        public Criteria andLine5StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line5_start not between", value1, value2, "line5Start");
            return (Criteria) this;
        }

        public Criteria orLine5StartIn(List<BigDecimal> values) {
            orCriterion("line5_start in", values, "line5Start");
            return (Criteria) this;
        }

        public Criteria orLine5StartNotIn(List<BigDecimal> values) {
            orCriterion("line5_start not in", values, "line5Start");
            return (Criteria) this;
        }

        public Criteria orLine5StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line5_start between", value1, value2, "line5Start");
            return (Criteria) this;
        }

        public Criteria orLine5StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line5_start not between", value1, value2, "line5Start");
            return (Criteria) this;
        }

        public Criteria andLine5EndIsNull() {
            addCriterion("line5_end is null");
            return (Criteria) this;
        }

        public Criteria andLine5EndIsNotNull() {
            addCriterion("line5_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine5EndEqualTo(BigDecimal value) {
            addCriterion("line5_end =", value, "line5End");
            return (Criteria) this;
        }

        public Criteria andLine5EndNotEqualTo(BigDecimal value) {
            addCriterion("line5_end <>", value, "line5End");
            return (Criteria) this;
        }

        public Criteria andLine5EndGreaterThan(BigDecimal value) {
            addCriterion("line5_end >", value, "line5End");
            return (Criteria) this;
        }

        public Criteria andLine5EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line5_end >=", value, "line5End");
            return (Criteria) this;
        }

        public Criteria andLine5EndLessThan(BigDecimal value) {
            addCriterion("line5_end <", value, "line5End");
            return (Criteria) this;
        }

        public Criteria andLine5EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line5_end <=", value, "line5End");
            return (Criteria) this;
        }

        public Criteria orLine5EndIsNull() {
            orCriterion("line5_end is null");
            return (Criteria) this;
        }

        public Criteria orLine5EndIsNotNull() {
            orCriterion("line5_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine5EndEqualTo(BigDecimal value) {
            orCriterion("line5_end =", value, "line5End");
            return (Criteria) this;
        }

        public Criteria orLine5EndNotEqualTo(BigDecimal value) {
            orCriterion("line5_end <>", value, "line5End");
            return (Criteria) this;
        }

        public Criteria orLine5EndGreaterThan(BigDecimal value) {
            orCriterion("line5_end >", value, "line5End");
            return (Criteria) this;
        }

        public Criteria orLine5EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line5_end >=", value, "line5End");
            return (Criteria) this;
        }

        public Criteria orLine5EndLessThan(BigDecimal value) {
            orCriterion("line5_end <", value, "line5End");
            return (Criteria) this;
        }

        public Criteria orLine5EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line5_end <=", value, "line5End");
            return (Criteria) this;
        }

        public Criteria andLine5EndIn(List<BigDecimal> values) {
            addCriterion("line5_end in", values, "line5End");
            return (Criteria) this;
        }

        public Criteria andLine5EndNotIn(List<BigDecimal> values) {
            addCriterion("line5_end not in", values, "line5End");
            return (Criteria) this;
        }

        public Criteria andLine5EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line5_end between", value1, value2, "line5End");
            return (Criteria) this;
        }

        public Criteria andLine5EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line5_end not between", value1, value2, "line5End");
            return (Criteria) this;
        }

        public Criteria orLine5EndIn(List<BigDecimal> values) {
            orCriterion("line5_end in", values, "line5End");
            return (Criteria) this;
        }

        public Criteria orLine5EndNotIn(List<BigDecimal> values) {
            orCriterion("line5_end not in", values, "line5End");
            return (Criteria) this;
        }

        public Criteria orLine5EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line5_end between", value1, value2, "line5End");
            return (Criteria) this;
        }

        public Criteria orLine5EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line5_end not between", value1, value2, "line5End");
            return (Criteria) this;
        }

        public Criteria andLine6StartIsNull() {
            addCriterion("line6_start is null");
            return (Criteria) this;
        }

        public Criteria andLine6StartIsNotNull() {
            addCriterion("line6_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine6StartEqualTo(BigDecimal value) {
            addCriterion("line6_start =", value, "line6Start");
            return (Criteria) this;
        }

        public Criteria andLine6StartNotEqualTo(BigDecimal value) {
            addCriterion("line6_start <>", value, "line6Start");
            return (Criteria) this;
        }

        public Criteria andLine6StartGreaterThan(BigDecimal value) {
            addCriterion("line6_start >", value, "line6Start");
            return (Criteria) this;
        }

        public Criteria andLine6StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line6_start >=", value, "line6Start");
            return (Criteria) this;
        }

        public Criteria andLine6StartLessThan(BigDecimal value) {
            addCriterion("line6_start <", value, "line6Start");
            return (Criteria) this;
        }

        public Criteria andLine6StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line6_start <=", value, "line6Start");
            return (Criteria) this;
        }

        public Criteria orLine6StartIsNull() {
            orCriterion("line6_start is null");
            return (Criteria) this;
        }

        public Criteria orLine6StartIsNotNull() {
            orCriterion("line6_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine6StartEqualTo(BigDecimal value) {
            orCriterion("line6_start =", value, "line6Start");
            return (Criteria) this;
        }

        public Criteria orLine6StartNotEqualTo(BigDecimal value) {
            orCriterion("line6_start <>", value, "line6Start");
            return (Criteria) this;
        }

        public Criteria orLine6StartGreaterThan(BigDecimal value) {
            orCriterion("line6_start >", value, "line6Start");
            return (Criteria) this;
        }

        public Criteria orLine6StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line6_start >=", value, "line6Start");
            return (Criteria) this;
        }

        public Criteria orLine6StartLessThan(BigDecimal value) {
            orCriterion("line6_start <", value, "line6Start");
            return (Criteria) this;
        }

        public Criteria orLine6StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line6_start <=", value, "line6Start");
            return (Criteria) this;
        }

        public Criteria andLine6StartIn(List<BigDecimal> values) {
            addCriterion("line6_start in", values, "line6Start");
            return (Criteria) this;
        }

        public Criteria andLine6StartNotIn(List<BigDecimal> values) {
            addCriterion("line6_start not in", values, "line6Start");
            return (Criteria) this;
        }

        public Criteria andLine6StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line6_start between", value1, value2, "line6Start");
            return (Criteria) this;
        }

        public Criteria andLine6StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line6_start not between", value1, value2, "line6Start");
            return (Criteria) this;
        }

        public Criteria orLine6StartIn(List<BigDecimal> values) {
            orCriterion("line6_start in", values, "line6Start");
            return (Criteria) this;
        }

        public Criteria orLine6StartNotIn(List<BigDecimal> values) {
            orCriterion("line6_start not in", values, "line6Start");
            return (Criteria) this;
        }

        public Criteria orLine6StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line6_start between", value1, value2, "line6Start");
            return (Criteria) this;
        }

        public Criteria orLine6StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line6_start not between", value1, value2, "line6Start");
            return (Criteria) this;
        }

        public Criteria andLine6EndIsNull() {
            addCriterion("line6_end is null");
            return (Criteria) this;
        }

        public Criteria andLine6EndIsNotNull() {
            addCriterion("line6_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine6EndEqualTo(BigDecimal value) {
            addCriterion("line6_end =", value, "line6End");
            return (Criteria) this;
        }

        public Criteria andLine6EndNotEqualTo(BigDecimal value) {
            addCriterion("line6_end <>", value, "line6End");
            return (Criteria) this;
        }

        public Criteria andLine6EndGreaterThan(BigDecimal value) {
            addCriterion("line6_end >", value, "line6End");
            return (Criteria) this;
        }

        public Criteria andLine6EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line6_end >=", value, "line6End");
            return (Criteria) this;
        }

        public Criteria andLine6EndLessThan(BigDecimal value) {
            addCriterion("line6_end <", value, "line6End");
            return (Criteria) this;
        }

        public Criteria andLine6EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line6_end <=", value, "line6End");
            return (Criteria) this;
        }

        public Criteria orLine6EndIsNull() {
            orCriterion("line6_end is null");
            return (Criteria) this;
        }

        public Criteria orLine6EndIsNotNull() {
            orCriterion("line6_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine6EndEqualTo(BigDecimal value) {
            orCriterion("line6_end =", value, "line6End");
            return (Criteria) this;
        }

        public Criteria orLine6EndNotEqualTo(BigDecimal value) {
            orCriterion("line6_end <>", value, "line6End");
            return (Criteria) this;
        }

        public Criteria orLine6EndGreaterThan(BigDecimal value) {
            orCriterion("line6_end >", value, "line6End");
            return (Criteria) this;
        }

        public Criteria orLine6EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line6_end >=", value, "line6End");
            return (Criteria) this;
        }

        public Criteria orLine6EndLessThan(BigDecimal value) {
            orCriterion("line6_end <", value, "line6End");
            return (Criteria) this;
        }

        public Criteria orLine6EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line6_end <=", value, "line6End");
            return (Criteria) this;
        }

        public Criteria andLine6EndIn(List<BigDecimal> values) {
            addCriterion("line6_end in", values, "line6End");
            return (Criteria) this;
        }

        public Criteria andLine6EndNotIn(List<BigDecimal> values) {
            addCriterion("line6_end not in", values, "line6End");
            return (Criteria) this;
        }

        public Criteria andLine6EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line6_end between", value1, value2, "line6End");
            return (Criteria) this;
        }

        public Criteria andLine6EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line6_end not between", value1, value2, "line6End");
            return (Criteria) this;
        }

        public Criteria orLine6EndIn(List<BigDecimal> values) {
            orCriterion("line6_end in", values, "line6End");
            return (Criteria) this;
        }

        public Criteria orLine6EndNotIn(List<BigDecimal> values) {
            orCriterion("line6_end not in", values, "line6End");
            return (Criteria) this;
        }

        public Criteria orLine6EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line6_end between", value1, value2, "line6End");
            return (Criteria) this;
        }

        public Criteria orLine6EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line6_end not between", value1, value2, "line6End");
            return (Criteria) this;
        }

        public Criteria andLine7StartIsNull() {
            addCriterion("line7_start is null");
            return (Criteria) this;
        }

        public Criteria andLine7StartIsNotNull() {
            addCriterion("line7_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine7StartEqualTo(BigDecimal value) {
            addCriterion("line7_start =", value, "line7Start");
            return (Criteria) this;
        }

        public Criteria andLine7StartNotEqualTo(BigDecimal value) {
            addCriterion("line7_start <>", value, "line7Start");
            return (Criteria) this;
        }

        public Criteria andLine7StartGreaterThan(BigDecimal value) {
            addCriterion("line7_start >", value, "line7Start");
            return (Criteria) this;
        }

        public Criteria andLine7StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line7_start >=", value, "line7Start");
            return (Criteria) this;
        }

        public Criteria andLine7StartLessThan(BigDecimal value) {
            addCriterion("line7_start <", value, "line7Start");
            return (Criteria) this;
        }

        public Criteria andLine7StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line7_start <=", value, "line7Start");
            return (Criteria) this;
        }

        public Criteria orLine7StartIsNull() {
            orCriterion("line7_start is null");
            return (Criteria) this;
        }

        public Criteria orLine7StartIsNotNull() {
            orCriterion("line7_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine7StartEqualTo(BigDecimal value) {
            orCriterion("line7_start =", value, "line7Start");
            return (Criteria) this;
        }

        public Criteria orLine7StartNotEqualTo(BigDecimal value) {
            orCriterion("line7_start <>", value, "line7Start");
            return (Criteria) this;
        }

        public Criteria orLine7StartGreaterThan(BigDecimal value) {
            orCriterion("line7_start >", value, "line7Start");
            return (Criteria) this;
        }

        public Criteria orLine7StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line7_start >=", value, "line7Start");
            return (Criteria) this;
        }

        public Criteria orLine7StartLessThan(BigDecimal value) {
            orCriterion("line7_start <", value, "line7Start");
            return (Criteria) this;
        }

        public Criteria orLine7StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line7_start <=", value, "line7Start");
            return (Criteria) this;
        }

        public Criteria andLine7StartIn(List<BigDecimal> values) {
            addCriterion("line7_start in", values, "line7Start");
            return (Criteria) this;
        }

        public Criteria andLine7StartNotIn(List<BigDecimal> values) {
            addCriterion("line7_start not in", values, "line7Start");
            return (Criteria) this;
        }

        public Criteria andLine7StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line7_start between", value1, value2, "line7Start");
            return (Criteria) this;
        }

        public Criteria andLine7StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line7_start not between", value1, value2, "line7Start");
            return (Criteria) this;
        }

        public Criteria orLine7StartIn(List<BigDecimal> values) {
            orCriterion("line7_start in", values, "line7Start");
            return (Criteria) this;
        }

        public Criteria orLine7StartNotIn(List<BigDecimal> values) {
            orCriterion("line7_start not in", values, "line7Start");
            return (Criteria) this;
        }

        public Criteria orLine7StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line7_start between", value1, value2, "line7Start");
            return (Criteria) this;
        }

        public Criteria orLine7StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line7_start not between", value1, value2, "line7Start");
            return (Criteria) this;
        }

        public Criteria andLine7EndIsNull() {
            addCriterion("line7_end is null");
            return (Criteria) this;
        }

        public Criteria andLine7EndIsNotNull() {
            addCriterion("line7_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine7EndEqualTo(BigDecimal value) {
            addCriterion("line7_end =", value, "line7End");
            return (Criteria) this;
        }

        public Criteria andLine7EndNotEqualTo(BigDecimal value) {
            addCriterion("line7_end <>", value, "line7End");
            return (Criteria) this;
        }

        public Criteria andLine7EndGreaterThan(BigDecimal value) {
            addCriterion("line7_end >", value, "line7End");
            return (Criteria) this;
        }

        public Criteria andLine7EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line7_end >=", value, "line7End");
            return (Criteria) this;
        }

        public Criteria andLine7EndLessThan(BigDecimal value) {
            addCriterion("line7_end <", value, "line7End");
            return (Criteria) this;
        }

        public Criteria andLine7EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line7_end <=", value, "line7End");
            return (Criteria) this;
        }

        public Criteria orLine7EndIsNull() {
            orCriterion("line7_end is null");
            return (Criteria) this;
        }

        public Criteria orLine7EndIsNotNull() {
            orCriterion("line7_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine7EndEqualTo(BigDecimal value) {
            orCriterion("line7_end =", value, "line7End");
            return (Criteria) this;
        }

        public Criteria orLine7EndNotEqualTo(BigDecimal value) {
            orCriterion("line7_end <>", value, "line7End");
            return (Criteria) this;
        }

        public Criteria orLine7EndGreaterThan(BigDecimal value) {
            orCriterion("line7_end >", value, "line7End");
            return (Criteria) this;
        }

        public Criteria orLine7EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line7_end >=", value, "line7End");
            return (Criteria) this;
        }

        public Criteria orLine7EndLessThan(BigDecimal value) {
            orCriterion("line7_end <", value, "line7End");
            return (Criteria) this;
        }

        public Criteria orLine7EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line7_end <=", value, "line7End");
            return (Criteria) this;
        }

        public Criteria andLine7EndIn(List<BigDecimal> values) {
            addCriterion("line7_end in", values, "line7End");
            return (Criteria) this;
        }

        public Criteria andLine7EndNotIn(List<BigDecimal> values) {
            addCriterion("line7_end not in", values, "line7End");
            return (Criteria) this;
        }

        public Criteria andLine7EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line7_end between", value1, value2, "line7End");
            return (Criteria) this;
        }

        public Criteria andLine7EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line7_end not between", value1, value2, "line7End");
            return (Criteria) this;
        }

        public Criteria orLine7EndIn(List<BigDecimal> values) {
            orCriterion("line7_end in", values, "line7End");
            return (Criteria) this;
        }

        public Criteria orLine7EndNotIn(List<BigDecimal> values) {
            orCriterion("line7_end not in", values, "line7End");
            return (Criteria) this;
        }

        public Criteria orLine7EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line7_end between", value1, value2, "line7End");
            return (Criteria) this;
        }

        public Criteria orLine7EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line7_end not between", value1, value2, "line7End");
            return (Criteria) this;
        }

        public Criteria andLine8StartIsNull() {
            addCriterion("line8_start is null");
            return (Criteria) this;
        }

        public Criteria andLine8StartIsNotNull() {
            addCriterion("line8_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine8StartEqualTo(BigDecimal value) {
            addCriterion("line8_start =", value, "line8Start");
            return (Criteria) this;
        }

        public Criteria andLine8StartNotEqualTo(BigDecimal value) {
            addCriterion("line8_start <>", value, "line8Start");
            return (Criteria) this;
        }

        public Criteria andLine8StartGreaterThan(BigDecimal value) {
            addCriterion("line8_start >", value, "line8Start");
            return (Criteria) this;
        }

        public Criteria andLine8StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line8_start >=", value, "line8Start");
            return (Criteria) this;
        }

        public Criteria andLine8StartLessThan(BigDecimal value) {
            addCriterion("line8_start <", value, "line8Start");
            return (Criteria) this;
        }

        public Criteria andLine8StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line8_start <=", value, "line8Start");
            return (Criteria) this;
        }

        public Criteria orLine8StartIsNull() {
            orCriterion("line8_start is null");
            return (Criteria) this;
        }

        public Criteria orLine8StartIsNotNull() {
            orCriterion("line8_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine8StartEqualTo(BigDecimal value) {
            orCriterion("line8_start =", value, "line8Start");
            return (Criteria) this;
        }

        public Criteria orLine8StartNotEqualTo(BigDecimal value) {
            orCriterion("line8_start <>", value, "line8Start");
            return (Criteria) this;
        }

        public Criteria orLine8StartGreaterThan(BigDecimal value) {
            orCriterion("line8_start >", value, "line8Start");
            return (Criteria) this;
        }

        public Criteria orLine8StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line8_start >=", value, "line8Start");
            return (Criteria) this;
        }

        public Criteria orLine8StartLessThan(BigDecimal value) {
            orCriterion("line8_start <", value, "line8Start");
            return (Criteria) this;
        }

        public Criteria orLine8StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line8_start <=", value, "line8Start");
            return (Criteria) this;
        }

        public Criteria andLine8StartIn(List<BigDecimal> values) {
            addCriterion("line8_start in", values, "line8Start");
            return (Criteria) this;
        }

        public Criteria andLine8StartNotIn(List<BigDecimal> values) {
            addCriterion("line8_start not in", values, "line8Start");
            return (Criteria) this;
        }

        public Criteria andLine8StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line8_start between", value1, value2, "line8Start");
            return (Criteria) this;
        }

        public Criteria andLine8StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line8_start not between", value1, value2, "line8Start");
            return (Criteria) this;
        }

        public Criteria orLine8StartIn(List<BigDecimal> values) {
            orCriterion("line8_start in", values, "line8Start");
            return (Criteria) this;
        }

        public Criteria orLine8StartNotIn(List<BigDecimal> values) {
            orCriterion("line8_start not in", values, "line8Start");
            return (Criteria) this;
        }

        public Criteria orLine8StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line8_start between", value1, value2, "line8Start");
            return (Criteria) this;
        }

        public Criteria orLine8StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line8_start not between", value1, value2, "line8Start");
            return (Criteria) this;
        }

        public Criteria andLine8EndIsNull() {
            addCriterion("line8_end is null");
            return (Criteria) this;
        }

        public Criteria andLine8EndIsNotNull() {
            addCriterion("line8_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine8EndEqualTo(BigDecimal value) {
            addCriterion("line8_end =", value, "line8End");
            return (Criteria) this;
        }

        public Criteria andLine8EndNotEqualTo(BigDecimal value) {
            addCriterion("line8_end <>", value, "line8End");
            return (Criteria) this;
        }

        public Criteria andLine8EndGreaterThan(BigDecimal value) {
            addCriterion("line8_end >", value, "line8End");
            return (Criteria) this;
        }

        public Criteria andLine8EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line8_end >=", value, "line8End");
            return (Criteria) this;
        }

        public Criteria andLine8EndLessThan(BigDecimal value) {
            addCriterion("line8_end <", value, "line8End");
            return (Criteria) this;
        }

        public Criteria andLine8EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line8_end <=", value, "line8End");
            return (Criteria) this;
        }

        public Criteria orLine8EndIsNull() {
            orCriterion("line8_end is null");
            return (Criteria) this;
        }

        public Criteria orLine8EndIsNotNull() {
            orCriterion("line8_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine8EndEqualTo(BigDecimal value) {
            orCriterion("line8_end =", value, "line8End");
            return (Criteria) this;
        }

        public Criteria orLine8EndNotEqualTo(BigDecimal value) {
            orCriterion("line8_end <>", value, "line8End");
            return (Criteria) this;
        }

        public Criteria orLine8EndGreaterThan(BigDecimal value) {
            orCriterion("line8_end >", value, "line8End");
            return (Criteria) this;
        }

        public Criteria orLine8EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line8_end >=", value, "line8End");
            return (Criteria) this;
        }

        public Criteria orLine8EndLessThan(BigDecimal value) {
            orCriterion("line8_end <", value, "line8End");
            return (Criteria) this;
        }

        public Criteria orLine8EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line8_end <=", value, "line8End");
            return (Criteria) this;
        }

        public Criteria andLine8EndIn(List<BigDecimal> values) {
            addCriterion("line8_end in", values, "line8End");
            return (Criteria) this;
        }

        public Criteria andLine8EndNotIn(List<BigDecimal> values) {
            addCriterion("line8_end not in", values, "line8End");
            return (Criteria) this;
        }

        public Criteria andLine8EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line8_end between", value1, value2, "line8End");
            return (Criteria) this;
        }

        public Criteria andLine8EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line8_end not between", value1, value2, "line8End");
            return (Criteria) this;
        }

        public Criteria orLine8EndIn(List<BigDecimal> values) {
            orCriterion("line8_end in", values, "line8End");
            return (Criteria) this;
        }

        public Criteria orLine8EndNotIn(List<BigDecimal> values) {
            orCriterion("line8_end not in", values, "line8End");
            return (Criteria) this;
        }

        public Criteria orLine8EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line8_end between", value1, value2, "line8End");
            return (Criteria) this;
        }

        public Criteria orLine8EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line8_end not between", value1, value2, "line8End");
            return (Criteria) this;
        }

        public Criteria andLine9StartIsNull() {
            addCriterion("line9_start is null");
            return (Criteria) this;
        }

        public Criteria andLine9StartIsNotNull() {
            addCriterion("line9_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine9StartEqualTo(BigDecimal value) {
            addCriterion("line9_start =", value, "line9Start");
            return (Criteria) this;
        }

        public Criteria andLine9StartNotEqualTo(BigDecimal value) {
            addCriterion("line9_start <>", value, "line9Start");
            return (Criteria) this;
        }

        public Criteria andLine9StartGreaterThan(BigDecimal value) {
            addCriterion("line9_start >", value, "line9Start");
            return (Criteria) this;
        }

        public Criteria andLine9StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line9_start >=", value, "line9Start");
            return (Criteria) this;
        }

        public Criteria andLine9StartLessThan(BigDecimal value) {
            addCriterion("line9_start <", value, "line9Start");
            return (Criteria) this;
        }

        public Criteria andLine9StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line9_start <=", value, "line9Start");
            return (Criteria) this;
        }

        public Criteria orLine9StartIsNull() {
            orCriterion("line9_start is null");
            return (Criteria) this;
        }

        public Criteria orLine9StartIsNotNull() {
            orCriterion("line9_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine9StartEqualTo(BigDecimal value) {
            orCriterion("line9_start =", value, "line9Start");
            return (Criteria) this;
        }

        public Criteria orLine9StartNotEqualTo(BigDecimal value) {
            orCriterion("line9_start <>", value, "line9Start");
            return (Criteria) this;
        }

        public Criteria orLine9StartGreaterThan(BigDecimal value) {
            orCriterion("line9_start >", value, "line9Start");
            return (Criteria) this;
        }

        public Criteria orLine9StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line9_start >=", value, "line9Start");
            return (Criteria) this;
        }

        public Criteria orLine9StartLessThan(BigDecimal value) {
            orCriterion("line9_start <", value, "line9Start");
            return (Criteria) this;
        }

        public Criteria orLine9StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line9_start <=", value, "line9Start");
            return (Criteria) this;
        }

        public Criteria andLine9StartIn(List<BigDecimal> values) {
            addCriterion("line9_start in", values, "line9Start");
            return (Criteria) this;
        }

        public Criteria andLine9StartNotIn(List<BigDecimal> values) {
            addCriterion("line9_start not in", values, "line9Start");
            return (Criteria) this;
        }

        public Criteria andLine9StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line9_start between", value1, value2, "line9Start");
            return (Criteria) this;
        }

        public Criteria andLine9StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line9_start not between", value1, value2, "line9Start");
            return (Criteria) this;
        }

        public Criteria orLine9StartIn(List<BigDecimal> values) {
            orCriterion("line9_start in", values, "line9Start");
            return (Criteria) this;
        }

        public Criteria orLine9StartNotIn(List<BigDecimal> values) {
            orCriterion("line9_start not in", values, "line9Start");
            return (Criteria) this;
        }

        public Criteria orLine9StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line9_start between", value1, value2, "line9Start");
            return (Criteria) this;
        }

        public Criteria orLine9StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line9_start not between", value1, value2, "line9Start");
            return (Criteria) this;
        }

        public Criteria andLine9EndIsNull() {
            addCriterion("line9_end is null");
            return (Criteria) this;
        }

        public Criteria andLine9EndIsNotNull() {
            addCriterion("line9_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine9EndEqualTo(BigDecimal value) {
            addCriterion("line9_end =", value, "line9End");
            return (Criteria) this;
        }

        public Criteria andLine9EndNotEqualTo(BigDecimal value) {
            addCriterion("line9_end <>", value, "line9End");
            return (Criteria) this;
        }

        public Criteria andLine9EndGreaterThan(BigDecimal value) {
            addCriterion("line9_end >", value, "line9End");
            return (Criteria) this;
        }

        public Criteria andLine9EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line9_end >=", value, "line9End");
            return (Criteria) this;
        }

        public Criteria andLine9EndLessThan(BigDecimal value) {
            addCriterion("line9_end <", value, "line9End");
            return (Criteria) this;
        }

        public Criteria andLine9EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line9_end <=", value, "line9End");
            return (Criteria) this;
        }

        public Criteria orLine9EndIsNull() {
            orCriterion("line9_end is null");
            return (Criteria) this;
        }

        public Criteria orLine9EndIsNotNull() {
            orCriterion("line9_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine9EndEqualTo(BigDecimal value) {
            orCriterion("line9_end =", value, "line9End");
            return (Criteria) this;
        }

        public Criteria orLine9EndNotEqualTo(BigDecimal value) {
            orCriterion("line9_end <>", value, "line9End");
            return (Criteria) this;
        }

        public Criteria orLine9EndGreaterThan(BigDecimal value) {
            orCriterion("line9_end >", value, "line9End");
            return (Criteria) this;
        }

        public Criteria orLine9EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line9_end >=", value, "line9End");
            return (Criteria) this;
        }

        public Criteria orLine9EndLessThan(BigDecimal value) {
            orCriterion("line9_end <", value, "line9End");
            return (Criteria) this;
        }

        public Criteria orLine9EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line9_end <=", value, "line9End");
            return (Criteria) this;
        }

        public Criteria andLine9EndIn(List<BigDecimal> values) {
            addCriterion("line9_end in", values, "line9End");
            return (Criteria) this;
        }

        public Criteria andLine9EndNotIn(List<BigDecimal> values) {
            addCriterion("line9_end not in", values, "line9End");
            return (Criteria) this;
        }

        public Criteria andLine9EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line9_end between", value1, value2, "line9End");
            return (Criteria) this;
        }

        public Criteria andLine9EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line9_end not between", value1, value2, "line9End");
            return (Criteria) this;
        }

        public Criteria orLine9EndIn(List<BigDecimal> values) {
            orCriterion("line9_end in", values, "line9End");
            return (Criteria) this;
        }

        public Criteria orLine9EndNotIn(List<BigDecimal> values) {
            orCriterion("line9_end not in", values, "line9End");
            return (Criteria) this;
        }

        public Criteria orLine9EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line9_end between", value1, value2, "line9End");
            return (Criteria) this;
        }

        public Criteria orLine9EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line9_end not between", value1, value2, "line9End");
            return (Criteria) this;
        }

        public Criteria andLine10StartIsNull() {
            addCriterion("line10_start is null");
            return (Criteria) this;
        }

        public Criteria andLine10StartIsNotNull() {
            addCriterion("line10_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine10StartEqualTo(BigDecimal value) {
            addCriterion("line10_start =", value, "line10Start");
            return (Criteria) this;
        }

        public Criteria andLine10StartNotEqualTo(BigDecimal value) {
            addCriterion("line10_start <>", value, "line10Start");
            return (Criteria) this;
        }

        public Criteria andLine10StartGreaterThan(BigDecimal value) {
            addCriterion("line10_start >", value, "line10Start");
            return (Criteria) this;
        }

        public Criteria andLine10StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line10_start >=", value, "line10Start");
            return (Criteria) this;
        }

        public Criteria andLine10StartLessThan(BigDecimal value) {
            addCriterion("line10_start <", value, "line10Start");
            return (Criteria) this;
        }

        public Criteria andLine10StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line10_start <=", value, "line10Start");
            return (Criteria) this;
        }

        public Criteria orLine10StartIsNull() {
            orCriterion("line10_start is null");
            return (Criteria) this;
        }

        public Criteria orLine10StartIsNotNull() {
            orCriterion("line10_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine10StartEqualTo(BigDecimal value) {
            orCriterion("line10_start =", value, "line10Start");
            return (Criteria) this;
        }

        public Criteria orLine10StartNotEqualTo(BigDecimal value) {
            orCriterion("line10_start <>", value, "line10Start");
            return (Criteria) this;
        }

        public Criteria orLine10StartGreaterThan(BigDecimal value) {
            orCriterion("line10_start >", value, "line10Start");
            return (Criteria) this;
        }

        public Criteria orLine10StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line10_start >=", value, "line10Start");
            return (Criteria) this;
        }

        public Criteria orLine10StartLessThan(BigDecimal value) {
            orCriterion("line10_start <", value, "line10Start");
            return (Criteria) this;
        }

        public Criteria orLine10StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line10_start <=", value, "line10Start");
            return (Criteria) this;
        }

        public Criteria andLine10StartIn(List<BigDecimal> values) {
            addCriterion("line10_start in", values, "line10Start");
            return (Criteria) this;
        }

        public Criteria andLine10StartNotIn(List<BigDecimal> values) {
            addCriterion("line10_start not in", values, "line10Start");
            return (Criteria) this;
        }

        public Criteria andLine10StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line10_start between", value1, value2, "line10Start");
            return (Criteria) this;
        }

        public Criteria andLine10StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line10_start not between", value1, value2, "line10Start");
            return (Criteria) this;
        }

        public Criteria orLine10StartIn(List<BigDecimal> values) {
            orCriterion("line10_start in", values, "line10Start");
            return (Criteria) this;
        }

        public Criteria orLine10StartNotIn(List<BigDecimal> values) {
            orCriterion("line10_start not in", values, "line10Start");
            return (Criteria) this;
        }

        public Criteria orLine10StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line10_start between", value1, value2, "line10Start");
            return (Criteria) this;
        }

        public Criteria orLine10StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line10_start not between", value1, value2, "line10Start");
            return (Criteria) this;
        }

        public Criteria andLine10EndIsNull() {
            addCriterion("line10_end is null");
            return (Criteria) this;
        }

        public Criteria andLine10EndIsNotNull() {
            addCriterion("line10_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine10EndEqualTo(BigDecimal value) {
            addCriterion("line10_end =", value, "line10End");
            return (Criteria) this;
        }

        public Criteria andLine10EndNotEqualTo(BigDecimal value) {
            addCriterion("line10_end <>", value, "line10End");
            return (Criteria) this;
        }

        public Criteria andLine10EndGreaterThan(BigDecimal value) {
            addCriterion("line10_end >", value, "line10End");
            return (Criteria) this;
        }

        public Criteria andLine10EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line10_end >=", value, "line10End");
            return (Criteria) this;
        }

        public Criteria andLine10EndLessThan(BigDecimal value) {
            addCriterion("line10_end <", value, "line10End");
            return (Criteria) this;
        }

        public Criteria andLine10EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line10_end <=", value, "line10End");
            return (Criteria) this;
        }

        public Criteria orLine10EndIsNull() {
            orCriterion("line10_end is null");
            return (Criteria) this;
        }

        public Criteria orLine10EndIsNotNull() {
            orCriterion("line10_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine10EndEqualTo(BigDecimal value) {
            orCriterion("line10_end =", value, "line10End");
            return (Criteria) this;
        }

        public Criteria orLine10EndNotEqualTo(BigDecimal value) {
            orCriterion("line10_end <>", value, "line10End");
            return (Criteria) this;
        }

        public Criteria orLine10EndGreaterThan(BigDecimal value) {
            orCriterion("line10_end >", value, "line10End");
            return (Criteria) this;
        }

        public Criteria orLine10EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line10_end >=", value, "line10End");
            return (Criteria) this;
        }

        public Criteria orLine10EndLessThan(BigDecimal value) {
            orCriterion("line10_end <", value, "line10End");
            return (Criteria) this;
        }

        public Criteria orLine10EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line10_end <=", value, "line10End");
            return (Criteria) this;
        }

        public Criteria andLine10EndIn(List<BigDecimal> values) {
            addCriterion("line10_end in", values, "line10End");
            return (Criteria) this;
        }

        public Criteria andLine10EndNotIn(List<BigDecimal> values) {
            addCriterion("line10_end not in", values, "line10End");
            return (Criteria) this;
        }

        public Criteria andLine10EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line10_end between", value1, value2, "line10End");
            return (Criteria) this;
        }

        public Criteria andLine10EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line10_end not between", value1, value2, "line10End");
            return (Criteria) this;
        }

        public Criteria orLine10EndIn(List<BigDecimal> values) {
            orCriterion("line10_end in", values, "line10End");
            return (Criteria) this;
        }

        public Criteria orLine10EndNotIn(List<BigDecimal> values) {
            orCriterion("line10_end not in", values, "line10End");
            return (Criteria) this;
        }

        public Criteria orLine10EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line10_end between", value1, value2, "line10End");
            return (Criteria) this;
        }

        public Criteria orLine10EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line10_end not between", value1, value2, "line10End");
            return (Criteria) this;
        }

        public Criteria andLine11StartIsNull() {
            addCriterion("line11_start is null");
            return (Criteria) this;
        }

        public Criteria andLine11StartIsNotNull() {
            addCriterion("line11_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine11StartEqualTo(BigDecimal value) {
            addCriterion("line11_start =", value, "line11Start");
            return (Criteria) this;
        }

        public Criteria andLine11StartNotEqualTo(BigDecimal value) {
            addCriterion("line11_start <>", value, "line11Start");
            return (Criteria) this;
        }

        public Criteria andLine11StartGreaterThan(BigDecimal value) {
            addCriterion("line11_start >", value, "line11Start");
            return (Criteria) this;
        }

        public Criteria andLine11StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line11_start >=", value, "line11Start");
            return (Criteria) this;
        }

        public Criteria andLine11StartLessThan(BigDecimal value) {
            addCriterion("line11_start <", value, "line11Start");
            return (Criteria) this;
        }

        public Criteria andLine11StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line11_start <=", value, "line11Start");
            return (Criteria) this;
        }

        public Criteria orLine11StartIsNull() {
            orCriterion("line11_start is null");
            return (Criteria) this;
        }

        public Criteria orLine11StartIsNotNull() {
            orCriterion("line11_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine11StartEqualTo(BigDecimal value) {
            orCriterion("line11_start =", value, "line11Start");
            return (Criteria) this;
        }

        public Criteria orLine11StartNotEqualTo(BigDecimal value) {
            orCriterion("line11_start <>", value, "line11Start");
            return (Criteria) this;
        }

        public Criteria orLine11StartGreaterThan(BigDecimal value) {
            orCriterion("line11_start >", value, "line11Start");
            return (Criteria) this;
        }

        public Criteria orLine11StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line11_start >=", value, "line11Start");
            return (Criteria) this;
        }

        public Criteria orLine11StartLessThan(BigDecimal value) {
            orCriterion("line11_start <", value, "line11Start");
            return (Criteria) this;
        }

        public Criteria orLine11StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line11_start <=", value, "line11Start");
            return (Criteria) this;
        }

        public Criteria andLine11StartIn(List<BigDecimal> values) {
            addCriterion("line11_start in", values, "line11Start");
            return (Criteria) this;
        }

        public Criteria andLine11StartNotIn(List<BigDecimal> values) {
            addCriterion("line11_start not in", values, "line11Start");
            return (Criteria) this;
        }

        public Criteria andLine11StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line11_start between", value1, value2, "line11Start");
            return (Criteria) this;
        }

        public Criteria andLine11StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line11_start not between", value1, value2, "line11Start");
            return (Criteria) this;
        }

        public Criteria orLine11StartIn(List<BigDecimal> values) {
            orCriterion("line11_start in", values, "line11Start");
            return (Criteria) this;
        }

        public Criteria orLine11StartNotIn(List<BigDecimal> values) {
            orCriterion("line11_start not in", values, "line11Start");
            return (Criteria) this;
        }

        public Criteria orLine11StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line11_start between", value1, value2, "line11Start");
            return (Criteria) this;
        }

        public Criteria orLine11StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line11_start not between", value1, value2, "line11Start");
            return (Criteria) this;
        }

        public Criteria andLine11EndIsNull() {
            addCriterion("line11_end is null");
            return (Criteria) this;
        }

        public Criteria andLine11EndIsNotNull() {
            addCriterion("line11_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine11EndEqualTo(BigDecimal value) {
            addCriterion("line11_end =", value, "line11End");
            return (Criteria) this;
        }

        public Criteria andLine11EndNotEqualTo(BigDecimal value) {
            addCriterion("line11_end <>", value, "line11End");
            return (Criteria) this;
        }

        public Criteria andLine11EndGreaterThan(BigDecimal value) {
            addCriterion("line11_end >", value, "line11End");
            return (Criteria) this;
        }

        public Criteria andLine11EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line11_end >=", value, "line11End");
            return (Criteria) this;
        }

        public Criteria andLine11EndLessThan(BigDecimal value) {
            addCriterion("line11_end <", value, "line11End");
            return (Criteria) this;
        }

        public Criteria andLine11EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line11_end <=", value, "line11End");
            return (Criteria) this;
        }

        public Criteria orLine11EndIsNull() {
            orCriterion("line11_end is null");
            return (Criteria) this;
        }

        public Criteria orLine11EndIsNotNull() {
            orCriterion("line11_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine11EndEqualTo(BigDecimal value) {
            orCriterion("line11_end =", value, "line11End");
            return (Criteria) this;
        }

        public Criteria orLine11EndNotEqualTo(BigDecimal value) {
            orCriterion("line11_end <>", value, "line11End");
            return (Criteria) this;
        }

        public Criteria orLine11EndGreaterThan(BigDecimal value) {
            orCriterion("line11_end >", value, "line11End");
            return (Criteria) this;
        }

        public Criteria orLine11EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line11_end >=", value, "line11End");
            return (Criteria) this;
        }

        public Criteria orLine11EndLessThan(BigDecimal value) {
            orCriterion("line11_end <", value, "line11End");
            return (Criteria) this;
        }

        public Criteria orLine11EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line11_end <=", value, "line11End");
            return (Criteria) this;
        }

        public Criteria andLine11EndIn(List<BigDecimal> values) {
            addCriterion("line11_end in", values, "line11End");
            return (Criteria) this;
        }

        public Criteria andLine11EndNotIn(List<BigDecimal> values) {
            addCriterion("line11_end not in", values, "line11End");
            return (Criteria) this;
        }

        public Criteria andLine11EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line11_end between", value1, value2, "line11End");
            return (Criteria) this;
        }

        public Criteria andLine11EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line11_end not between", value1, value2, "line11End");
            return (Criteria) this;
        }

        public Criteria orLine11EndIn(List<BigDecimal> values) {
            orCriterion("line11_end in", values, "line11End");
            return (Criteria) this;
        }

        public Criteria orLine11EndNotIn(List<BigDecimal> values) {
            orCriterion("line11_end not in", values, "line11End");
            return (Criteria) this;
        }

        public Criteria orLine11EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line11_end between", value1, value2, "line11End");
            return (Criteria) this;
        }

        public Criteria orLine11EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line11_end not between", value1, value2, "line11End");
            return (Criteria) this;
        }

        public Criteria andLine12StartIsNull() {
            addCriterion("line12_start is null");
            return (Criteria) this;
        }

        public Criteria andLine12StartIsNotNull() {
            addCriterion("line12_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine12StartEqualTo(BigDecimal value) {
            addCriterion("line12_start =", value, "line12Start");
            return (Criteria) this;
        }

        public Criteria andLine12StartNotEqualTo(BigDecimal value) {
            addCriterion("line12_start <>", value, "line12Start");
            return (Criteria) this;
        }

        public Criteria andLine12StartGreaterThan(BigDecimal value) {
            addCriterion("line12_start >", value, "line12Start");
            return (Criteria) this;
        }

        public Criteria andLine12StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line12_start >=", value, "line12Start");
            return (Criteria) this;
        }

        public Criteria andLine12StartLessThan(BigDecimal value) {
            addCriterion("line12_start <", value, "line12Start");
            return (Criteria) this;
        }

        public Criteria andLine12StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line12_start <=", value, "line12Start");
            return (Criteria) this;
        }

        public Criteria orLine12StartIsNull() {
            orCriterion("line12_start is null");
            return (Criteria) this;
        }

        public Criteria orLine12StartIsNotNull() {
            orCriterion("line12_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine12StartEqualTo(BigDecimal value) {
            orCriterion("line12_start =", value, "line12Start");
            return (Criteria) this;
        }

        public Criteria orLine12StartNotEqualTo(BigDecimal value) {
            orCriterion("line12_start <>", value, "line12Start");
            return (Criteria) this;
        }

        public Criteria orLine12StartGreaterThan(BigDecimal value) {
            orCriterion("line12_start >", value, "line12Start");
            return (Criteria) this;
        }

        public Criteria orLine12StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line12_start >=", value, "line12Start");
            return (Criteria) this;
        }

        public Criteria orLine12StartLessThan(BigDecimal value) {
            orCriterion("line12_start <", value, "line12Start");
            return (Criteria) this;
        }

        public Criteria orLine12StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line12_start <=", value, "line12Start");
            return (Criteria) this;
        }

        public Criteria andLine12StartIn(List<BigDecimal> values) {
            addCriterion("line12_start in", values, "line12Start");
            return (Criteria) this;
        }

        public Criteria andLine12StartNotIn(List<BigDecimal> values) {
            addCriterion("line12_start not in", values, "line12Start");
            return (Criteria) this;
        }

        public Criteria andLine12StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line12_start between", value1, value2, "line12Start");
            return (Criteria) this;
        }

        public Criteria andLine12StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line12_start not between", value1, value2, "line12Start");
            return (Criteria) this;
        }

        public Criteria orLine12StartIn(List<BigDecimal> values) {
            orCriterion("line12_start in", values, "line12Start");
            return (Criteria) this;
        }

        public Criteria orLine12StartNotIn(List<BigDecimal> values) {
            orCriterion("line12_start not in", values, "line12Start");
            return (Criteria) this;
        }

        public Criteria orLine12StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line12_start between", value1, value2, "line12Start");
            return (Criteria) this;
        }

        public Criteria orLine12StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line12_start not between", value1, value2, "line12Start");
            return (Criteria) this;
        }

        public Criteria andLine12EndIsNull() {
            addCriterion("line12_end is null");
            return (Criteria) this;
        }

        public Criteria andLine12EndIsNotNull() {
            addCriterion("line12_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine12EndEqualTo(BigDecimal value) {
            addCriterion("line12_end =", value, "line12End");
            return (Criteria) this;
        }

        public Criteria andLine12EndNotEqualTo(BigDecimal value) {
            addCriterion("line12_end <>", value, "line12End");
            return (Criteria) this;
        }

        public Criteria andLine12EndGreaterThan(BigDecimal value) {
            addCriterion("line12_end >", value, "line12End");
            return (Criteria) this;
        }

        public Criteria andLine12EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line12_end >=", value, "line12End");
            return (Criteria) this;
        }

        public Criteria andLine12EndLessThan(BigDecimal value) {
            addCriterion("line12_end <", value, "line12End");
            return (Criteria) this;
        }

        public Criteria andLine12EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line12_end <=", value, "line12End");
            return (Criteria) this;
        }

        public Criteria orLine12EndIsNull() {
            orCriterion("line12_end is null");
            return (Criteria) this;
        }

        public Criteria orLine12EndIsNotNull() {
            orCriterion("line12_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine12EndEqualTo(BigDecimal value) {
            orCriterion("line12_end =", value, "line12End");
            return (Criteria) this;
        }

        public Criteria orLine12EndNotEqualTo(BigDecimal value) {
            orCriterion("line12_end <>", value, "line12End");
            return (Criteria) this;
        }

        public Criteria orLine12EndGreaterThan(BigDecimal value) {
            orCriterion("line12_end >", value, "line12End");
            return (Criteria) this;
        }

        public Criteria orLine12EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line12_end >=", value, "line12End");
            return (Criteria) this;
        }

        public Criteria orLine12EndLessThan(BigDecimal value) {
            orCriterion("line12_end <", value, "line12End");
            return (Criteria) this;
        }

        public Criteria orLine12EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line12_end <=", value, "line12End");
            return (Criteria) this;
        }

        public Criteria andLine12EndIn(List<BigDecimal> values) {
            addCriterion("line12_end in", values, "line12End");
            return (Criteria) this;
        }

        public Criteria andLine12EndNotIn(List<BigDecimal> values) {
            addCriterion("line12_end not in", values, "line12End");
            return (Criteria) this;
        }

        public Criteria andLine12EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line12_end between", value1, value2, "line12End");
            return (Criteria) this;
        }

        public Criteria andLine12EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line12_end not between", value1, value2, "line12End");
            return (Criteria) this;
        }

        public Criteria orLine12EndIn(List<BigDecimal> values) {
            orCriterion("line12_end in", values, "line12End");
            return (Criteria) this;
        }

        public Criteria orLine12EndNotIn(List<BigDecimal> values) {
            orCriterion("line12_end not in", values, "line12End");
            return (Criteria) this;
        }

        public Criteria orLine12EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line12_end between", value1, value2, "line12End");
            return (Criteria) this;
        }

        public Criteria orLine12EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line12_end not between", value1, value2, "line12End");
            return (Criteria) this;
        }

        public Criteria andLine13StartIsNull() {
            addCriterion("line13_start is null");
            return (Criteria) this;
        }

        public Criteria andLine13StartIsNotNull() {
            addCriterion("line13_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine13StartEqualTo(BigDecimal value) {
            addCriterion("line13_start =", value, "line13Start");
            return (Criteria) this;
        }

        public Criteria andLine13StartNotEqualTo(BigDecimal value) {
            addCriterion("line13_start <>", value, "line13Start");
            return (Criteria) this;
        }

        public Criteria andLine13StartGreaterThan(BigDecimal value) {
            addCriterion("line13_start >", value, "line13Start");
            return (Criteria) this;
        }

        public Criteria andLine13StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line13_start >=", value, "line13Start");
            return (Criteria) this;
        }

        public Criteria andLine13StartLessThan(BigDecimal value) {
            addCriterion("line13_start <", value, "line13Start");
            return (Criteria) this;
        }

        public Criteria andLine13StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line13_start <=", value, "line13Start");
            return (Criteria) this;
        }

        public Criteria orLine13StartIsNull() {
            orCriterion("line13_start is null");
            return (Criteria) this;
        }

        public Criteria orLine13StartIsNotNull() {
            orCriterion("line13_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine13StartEqualTo(BigDecimal value) {
            orCriterion("line13_start =", value, "line13Start");
            return (Criteria) this;
        }

        public Criteria orLine13StartNotEqualTo(BigDecimal value) {
            orCriterion("line13_start <>", value, "line13Start");
            return (Criteria) this;
        }

        public Criteria orLine13StartGreaterThan(BigDecimal value) {
            orCriterion("line13_start >", value, "line13Start");
            return (Criteria) this;
        }

        public Criteria orLine13StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line13_start >=", value, "line13Start");
            return (Criteria) this;
        }

        public Criteria orLine13StartLessThan(BigDecimal value) {
            orCriterion("line13_start <", value, "line13Start");
            return (Criteria) this;
        }

        public Criteria orLine13StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line13_start <=", value, "line13Start");
            return (Criteria) this;
        }

        public Criteria andLine13StartIn(List<BigDecimal> values) {
            addCriterion("line13_start in", values, "line13Start");
            return (Criteria) this;
        }

        public Criteria andLine13StartNotIn(List<BigDecimal> values) {
            addCriterion("line13_start not in", values, "line13Start");
            return (Criteria) this;
        }

        public Criteria andLine13StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line13_start between", value1, value2, "line13Start");
            return (Criteria) this;
        }

        public Criteria andLine13StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line13_start not between", value1, value2, "line13Start");
            return (Criteria) this;
        }

        public Criteria orLine13StartIn(List<BigDecimal> values) {
            orCriterion("line13_start in", values, "line13Start");
            return (Criteria) this;
        }

        public Criteria orLine13StartNotIn(List<BigDecimal> values) {
            orCriterion("line13_start not in", values, "line13Start");
            return (Criteria) this;
        }

        public Criteria orLine13StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line13_start between", value1, value2, "line13Start");
            return (Criteria) this;
        }

        public Criteria orLine13StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line13_start not between", value1, value2, "line13Start");
            return (Criteria) this;
        }

        public Criteria andLine13EndIsNull() {
            addCriterion("line13_end is null");
            return (Criteria) this;
        }

        public Criteria andLine13EndIsNotNull() {
            addCriterion("line13_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine13EndEqualTo(BigDecimal value) {
            addCriterion("line13_end =", value, "line13End");
            return (Criteria) this;
        }

        public Criteria andLine13EndNotEqualTo(BigDecimal value) {
            addCriterion("line13_end <>", value, "line13End");
            return (Criteria) this;
        }

        public Criteria andLine13EndGreaterThan(BigDecimal value) {
            addCriterion("line13_end >", value, "line13End");
            return (Criteria) this;
        }

        public Criteria andLine13EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line13_end >=", value, "line13End");
            return (Criteria) this;
        }

        public Criteria andLine13EndLessThan(BigDecimal value) {
            addCriterion("line13_end <", value, "line13End");
            return (Criteria) this;
        }

        public Criteria andLine13EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line13_end <=", value, "line13End");
            return (Criteria) this;
        }

        public Criteria orLine13EndIsNull() {
            orCriterion("line13_end is null");
            return (Criteria) this;
        }

        public Criteria orLine13EndIsNotNull() {
            orCriterion("line13_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine13EndEqualTo(BigDecimal value) {
            orCriterion("line13_end =", value, "line13End");
            return (Criteria) this;
        }

        public Criteria orLine13EndNotEqualTo(BigDecimal value) {
            orCriterion("line13_end <>", value, "line13End");
            return (Criteria) this;
        }

        public Criteria orLine13EndGreaterThan(BigDecimal value) {
            orCriterion("line13_end >", value, "line13End");
            return (Criteria) this;
        }

        public Criteria orLine13EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line13_end >=", value, "line13End");
            return (Criteria) this;
        }

        public Criteria orLine13EndLessThan(BigDecimal value) {
            orCriterion("line13_end <", value, "line13End");
            return (Criteria) this;
        }

        public Criteria orLine13EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line13_end <=", value, "line13End");
            return (Criteria) this;
        }

        public Criteria andLine13EndIn(List<BigDecimal> values) {
            addCriterion("line13_end in", values, "line13End");
            return (Criteria) this;
        }

        public Criteria andLine13EndNotIn(List<BigDecimal> values) {
            addCriterion("line13_end not in", values, "line13End");
            return (Criteria) this;
        }

        public Criteria andLine13EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line13_end between", value1, value2, "line13End");
            return (Criteria) this;
        }

        public Criteria andLine13EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line13_end not between", value1, value2, "line13End");
            return (Criteria) this;
        }

        public Criteria orLine13EndIn(List<BigDecimal> values) {
            orCriterion("line13_end in", values, "line13End");
            return (Criteria) this;
        }

        public Criteria orLine13EndNotIn(List<BigDecimal> values) {
            orCriterion("line13_end not in", values, "line13End");
            return (Criteria) this;
        }

        public Criteria orLine13EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line13_end between", value1, value2, "line13End");
            return (Criteria) this;
        }

        public Criteria orLine13EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line13_end not between", value1, value2, "line13End");
            return (Criteria) this;
        }

        public Criteria andLine14StartIsNull() {
            addCriterion("line14_start is null");
            return (Criteria) this;
        }

        public Criteria andLine14StartIsNotNull() {
            addCriterion("line14_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine14StartEqualTo(BigDecimal value) {
            addCriterion("line14_start =", value, "line14Start");
            return (Criteria) this;
        }

        public Criteria andLine14StartNotEqualTo(BigDecimal value) {
            addCriterion("line14_start <>", value, "line14Start");
            return (Criteria) this;
        }

        public Criteria andLine14StartGreaterThan(BigDecimal value) {
            addCriterion("line14_start >", value, "line14Start");
            return (Criteria) this;
        }

        public Criteria andLine14StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line14_start >=", value, "line14Start");
            return (Criteria) this;
        }

        public Criteria andLine14StartLessThan(BigDecimal value) {
            addCriterion("line14_start <", value, "line14Start");
            return (Criteria) this;
        }

        public Criteria andLine14StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line14_start <=", value, "line14Start");
            return (Criteria) this;
        }

        public Criteria orLine14StartIsNull() {
            orCriterion("line14_start is null");
            return (Criteria) this;
        }

        public Criteria orLine14StartIsNotNull() {
            orCriterion("line14_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine14StartEqualTo(BigDecimal value) {
            orCriterion("line14_start =", value, "line14Start");
            return (Criteria) this;
        }

        public Criteria orLine14StartNotEqualTo(BigDecimal value) {
            orCriterion("line14_start <>", value, "line14Start");
            return (Criteria) this;
        }

        public Criteria orLine14StartGreaterThan(BigDecimal value) {
            orCriterion("line14_start >", value, "line14Start");
            return (Criteria) this;
        }

        public Criteria orLine14StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line14_start >=", value, "line14Start");
            return (Criteria) this;
        }

        public Criteria orLine14StartLessThan(BigDecimal value) {
            orCriterion("line14_start <", value, "line14Start");
            return (Criteria) this;
        }

        public Criteria orLine14StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line14_start <=", value, "line14Start");
            return (Criteria) this;
        }

        public Criteria andLine14StartIn(List<BigDecimal> values) {
            addCriterion("line14_start in", values, "line14Start");
            return (Criteria) this;
        }

        public Criteria andLine14StartNotIn(List<BigDecimal> values) {
            addCriterion("line14_start not in", values, "line14Start");
            return (Criteria) this;
        }

        public Criteria andLine14StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line14_start between", value1, value2, "line14Start");
            return (Criteria) this;
        }

        public Criteria andLine14StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line14_start not between", value1, value2, "line14Start");
            return (Criteria) this;
        }

        public Criteria orLine14StartIn(List<BigDecimal> values) {
            orCriterion("line14_start in", values, "line14Start");
            return (Criteria) this;
        }

        public Criteria orLine14StartNotIn(List<BigDecimal> values) {
            orCriterion("line14_start not in", values, "line14Start");
            return (Criteria) this;
        }

        public Criteria orLine14StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line14_start between", value1, value2, "line14Start");
            return (Criteria) this;
        }

        public Criteria orLine14StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line14_start not between", value1, value2, "line14Start");
            return (Criteria) this;
        }

        public Criteria andLine14EndIsNull() {
            addCriterion("line14_end is null");
            return (Criteria) this;
        }

        public Criteria andLine14EndIsNotNull() {
            addCriterion("line14_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine14EndEqualTo(BigDecimal value) {
            addCriterion("line14_end =", value, "line14End");
            return (Criteria) this;
        }

        public Criteria andLine14EndNotEqualTo(BigDecimal value) {
            addCriterion("line14_end <>", value, "line14End");
            return (Criteria) this;
        }

        public Criteria andLine14EndGreaterThan(BigDecimal value) {
            addCriterion("line14_end >", value, "line14End");
            return (Criteria) this;
        }

        public Criteria andLine14EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line14_end >=", value, "line14End");
            return (Criteria) this;
        }

        public Criteria andLine14EndLessThan(BigDecimal value) {
            addCriterion("line14_end <", value, "line14End");
            return (Criteria) this;
        }

        public Criteria andLine14EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line14_end <=", value, "line14End");
            return (Criteria) this;
        }

        public Criteria orLine14EndIsNull() {
            orCriterion("line14_end is null");
            return (Criteria) this;
        }

        public Criteria orLine14EndIsNotNull() {
            orCriterion("line14_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine14EndEqualTo(BigDecimal value) {
            orCriterion("line14_end =", value, "line14End");
            return (Criteria) this;
        }

        public Criteria orLine14EndNotEqualTo(BigDecimal value) {
            orCriterion("line14_end <>", value, "line14End");
            return (Criteria) this;
        }

        public Criteria orLine14EndGreaterThan(BigDecimal value) {
            orCriterion("line14_end >", value, "line14End");
            return (Criteria) this;
        }

        public Criteria orLine14EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line14_end >=", value, "line14End");
            return (Criteria) this;
        }

        public Criteria orLine14EndLessThan(BigDecimal value) {
            orCriterion("line14_end <", value, "line14End");
            return (Criteria) this;
        }

        public Criteria orLine14EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line14_end <=", value, "line14End");
            return (Criteria) this;
        }

        public Criteria andLine14EndIn(List<BigDecimal> values) {
            addCriterion("line14_end in", values, "line14End");
            return (Criteria) this;
        }

        public Criteria andLine14EndNotIn(List<BigDecimal> values) {
            addCriterion("line14_end not in", values, "line14End");
            return (Criteria) this;
        }

        public Criteria andLine14EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line14_end between", value1, value2, "line14End");
            return (Criteria) this;
        }

        public Criteria andLine14EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line14_end not between", value1, value2, "line14End");
            return (Criteria) this;
        }

        public Criteria orLine14EndIn(List<BigDecimal> values) {
            orCriterion("line14_end in", values, "line14End");
            return (Criteria) this;
        }

        public Criteria orLine14EndNotIn(List<BigDecimal> values) {
            orCriterion("line14_end not in", values, "line14End");
            return (Criteria) this;
        }

        public Criteria orLine14EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line14_end between", value1, value2, "line14End");
            return (Criteria) this;
        }

        public Criteria orLine14EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line14_end not between", value1, value2, "line14End");
            return (Criteria) this;
        }

        public Criteria andLine15StartIsNull() {
            addCriterion("line15_start is null");
            return (Criteria) this;
        }

        public Criteria andLine15StartIsNotNull() {
            addCriterion("line15_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine15StartEqualTo(BigDecimal value) {
            addCriterion("line15_start =", value, "line15Start");
            return (Criteria) this;
        }

        public Criteria andLine15StartNotEqualTo(BigDecimal value) {
            addCriterion("line15_start <>", value, "line15Start");
            return (Criteria) this;
        }

        public Criteria andLine15StartGreaterThan(BigDecimal value) {
            addCriterion("line15_start >", value, "line15Start");
            return (Criteria) this;
        }

        public Criteria andLine15StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line15_start >=", value, "line15Start");
            return (Criteria) this;
        }

        public Criteria andLine15StartLessThan(BigDecimal value) {
            addCriterion("line15_start <", value, "line15Start");
            return (Criteria) this;
        }

        public Criteria andLine15StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line15_start <=", value, "line15Start");
            return (Criteria) this;
        }

        public Criteria orLine15StartIsNull() {
            orCriterion("line15_start is null");
            return (Criteria) this;
        }

        public Criteria orLine15StartIsNotNull() {
            orCriterion("line15_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine15StartEqualTo(BigDecimal value) {
            orCriterion("line15_start =", value, "line15Start");
            return (Criteria) this;
        }

        public Criteria orLine15StartNotEqualTo(BigDecimal value) {
            orCriterion("line15_start <>", value, "line15Start");
            return (Criteria) this;
        }

        public Criteria orLine15StartGreaterThan(BigDecimal value) {
            orCriterion("line15_start >", value, "line15Start");
            return (Criteria) this;
        }

        public Criteria orLine15StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line15_start >=", value, "line15Start");
            return (Criteria) this;
        }

        public Criteria orLine15StartLessThan(BigDecimal value) {
            orCriterion("line15_start <", value, "line15Start");
            return (Criteria) this;
        }

        public Criteria orLine15StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line15_start <=", value, "line15Start");
            return (Criteria) this;
        }

        public Criteria andLine15StartIn(List<BigDecimal> values) {
            addCriterion("line15_start in", values, "line15Start");
            return (Criteria) this;
        }

        public Criteria andLine15StartNotIn(List<BigDecimal> values) {
            addCriterion("line15_start not in", values, "line15Start");
            return (Criteria) this;
        }

        public Criteria andLine15StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line15_start between", value1, value2, "line15Start");
            return (Criteria) this;
        }

        public Criteria andLine15StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line15_start not between", value1, value2, "line15Start");
            return (Criteria) this;
        }

        public Criteria orLine15StartIn(List<BigDecimal> values) {
            orCriterion("line15_start in", values, "line15Start");
            return (Criteria) this;
        }

        public Criteria orLine15StartNotIn(List<BigDecimal> values) {
            orCriterion("line15_start not in", values, "line15Start");
            return (Criteria) this;
        }

        public Criteria orLine15StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line15_start between", value1, value2, "line15Start");
            return (Criteria) this;
        }

        public Criteria orLine15StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line15_start not between", value1, value2, "line15Start");
            return (Criteria) this;
        }

        public Criteria andLine15EndIsNull() {
            addCriterion("line15_end is null");
            return (Criteria) this;
        }

        public Criteria andLine15EndIsNotNull() {
            addCriterion("line15_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine15EndEqualTo(BigDecimal value) {
            addCriterion("line15_end =", value, "line15End");
            return (Criteria) this;
        }

        public Criteria andLine15EndNotEqualTo(BigDecimal value) {
            addCriterion("line15_end <>", value, "line15End");
            return (Criteria) this;
        }

        public Criteria andLine15EndGreaterThan(BigDecimal value) {
            addCriterion("line15_end >", value, "line15End");
            return (Criteria) this;
        }

        public Criteria andLine15EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line15_end >=", value, "line15End");
            return (Criteria) this;
        }

        public Criteria andLine15EndLessThan(BigDecimal value) {
            addCriterion("line15_end <", value, "line15End");
            return (Criteria) this;
        }

        public Criteria andLine15EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line15_end <=", value, "line15End");
            return (Criteria) this;
        }

        public Criteria orLine15EndIsNull() {
            orCriterion("line15_end is null");
            return (Criteria) this;
        }

        public Criteria orLine15EndIsNotNull() {
            orCriterion("line15_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine15EndEqualTo(BigDecimal value) {
            orCriterion("line15_end =", value, "line15End");
            return (Criteria) this;
        }

        public Criteria orLine15EndNotEqualTo(BigDecimal value) {
            orCriterion("line15_end <>", value, "line15End");
            return (Criteria) this;
        }

        public Criteria orLine15EndGreaterThan(BigDecimal value) {
            orCriterion("line15_end >", value, "line15End");
            return (Criteria) this;
        }

        public Criteria orLine15EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line15_end >=", value, "line15End");
            return (Criteria) this;
        }

        public Criteria orLine15EndLessThan(BigDecimal value) {
            orCriterion("line15_end <", value, "line15End");
            return (Criteria) this;
        }

        public Criteria orLine15EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line15_end <=", value, "line15End");
            return (Criteria) this;
        }

        public Criteria andLine15EndIn(List<BigDecimal> values) {
            addCriterion("line15_end in", values, "line15End");
            return (Criteria) this;
        }

        public Criteria andLine15EndNotIn(List<BigDecimal> values) {
            addCriterion("line15_end not in", values, "line15End");
            return (Criteria) this;
        }

        public Criteria andLine15EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line15_end between", value1, value2, "line15End");
            return (Criteria) this;
        }

        public Criteria andLine15EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line15_end not between", value1, value2, "line15End");
            return (Criteria) this;
        }

        public Criteria orLine15EndIn(List<BigDecimal> values) {
            orCriterion("line15_end in", values, "line15End");
            return (Criteria) this;
        }

        public Criteria orLine15EndNotIn(List<BigDecimal> values) {
            orCriterion("line15_end not in", values, "line15End");
            return (Criteria) this;
        }

        public Criteria orLine15EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line15_end between", value1, value2, "line15End");
            return (Criteria) this;
        }

        public Criteria orLine15EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line15_end not between", value1, value2, "line15End");
            return (Criteria) this;
        }

        public Criteria andLine16StartIsNull() {
            addCriterion("line16_start is null");
            return (Criteria) this;
        }

        public Criteria andLine16StartIsNotNull() {
            addCriterion("line16_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine16StartEqualTo(BigDecimal value) {
            addCriterion("line16_start =", value, "line16Start");
            return (Criteria) this;
        }

        public Criteria andLine16StartNotEqualTo(BigDecimal value) {
            addCriterion("line16_start <>", value, "line16Start");
            return (Criteria) this;
        }

        public Criteria andLine16StartGreaterThan(BigDecimal value) {
            addCriterion("line16_start >", value, "line16Start");
            return (Criteria) this;
        }

        public Criteria andLine16StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line16_start >=", value, "line16Start");
            return (Criteria) this;
        }

        public Criteria andLine16StartLessThan(BigDecimal value) {
            addCriterion("line16_start <", value, "line16Start");
            return (Criteria) this;
        }

        public Criteria andLine16StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line16_start <=", value, "line16Start");
            return (Criteria) this;
        }

        public Criteria orLine16StartIsNull() {
            orCriterion("line16_start is null");
            return (Criteria) this;
        }

        public Criteria orLine16StartIsNotNull() {
            orCriterion("line16_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine16StartEqualTo(BigDecimal value) {
            orCriterion("line16_start =", value, "line16Start");
            return (Criteria) this;
        }

        public Criteria orLine16StartNotEqualTo(BigDecimal value) {
            orCriterion("line16_start <>", value, "line16Start");
            return (Criteria) this;
        }

        public Criteria orLine16StartGreaterThan(BigDecimal value) {
            orCriterion("line16_start >", value, "line16Start");
            return (Criteria) this;
        }

        public Criteria orLine16StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line16_start >=", value, "line16Start");
            return (Criteria) this;
        }

        public Criteria orLine16StartLessThan(BigDecimal value) {
            orCriterion("line16_start <", value, "line16Start");
            return (Criteria) this;
        }

        public Criteria orLine16StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line16_start <=", value, "line16Start");
            return (Criteria) this;
        }

        public Criteria andLine16StartIn(List<BigDecimal> values) {
            addCriterion("line16_start in", values, "line16Start");
            return (Criteria) this;
        }

        public Criteria andLine16StartNotIn(List<BigDecimal> values) {
            addCriterion("line16_start not in", values, "line16Start");
            return (Criteria) this;
        }

        public Criteria andLine16StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line16_start between", value1, value2, "line16Start");
            return (Criteria) this;
        }

        public Criteria andLine16StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line16_start not between", value1, value2, "line16Start");
            return (Criteria) this;
        }

        public Criteria orLine16StartIn(List<BigDecimal> values) {
            orCriterion("line16_start in", values, "line16Start");
            return (Criteria) this;
        }

        public Criteria orLine16StartNotIn(List<BigDecimal> values) {
            orCriterion("line16_start not in", values, "line16Start");
            return (Criteria) this;
        }

        public Criteria orLine16StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line16_start between", value1, value2, "line16Start");
            return (Criteria) this;
        }

        public Criteria orLine16StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line16_start not between", value1, value2, "line16Start");
            return (Criteria) this;
        }

        public Criteria andLine16EndIsNull() {
            addCriterion("line16_end is null");
            return (Criteria) this;
        }

        public Criteria andLine16EndIsNotNull() {
            addCriterion("line16_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine16EndEqualTo(BigDecimal value) {
            addCriterion("line16_end =", value, "line16End");
            return (Criteria) this;
        }

        public Criteria andLine16EndNotEqualTo(BigDecimal value) {
            addCriterion("line16_end <>", value, "line16End");
            return (Criteria) this;
        }

        public Criteria andLine16EndGreaterThan(BigDecimal value) {
            addCriterion("line16_end >", value, "line16End");
            return (Criteria) this;
        }

        public Criteria andLine16EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line16_end >=", value, "line16End");
            return (Criteria) this;
        }

        public Criteria andLine16EndLessThan(BigDecimal value) {
            addCriterion("line16_end <", value, "line16End");
            return (Criteria) this;
        }

        public Criteria andLine16EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line16_end <=", value, "line16End");
            return (Criteria) this;
        }

        public Criteria orLine16EndIsNull() {
            orCriterion("line16_end is null");
            return (Criteria) this;
        }

        public Criteria orLine16EndIsNotNull() {
            orCriterion("line16_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine16EndEqualTo(BigDecimal value) {
            orCriterion("line16_end =", value, "line16End");
            return (Criteria) this;
        }

        public Criteria orLine16EndNotEqualTo(BigDecimal value) {
            orCriterion("line16_end <>", value, "line16End");
            return (Criteria) this;
        }

        public Criteria orLine16EndGreaterThan(BigDecimal value) {
            orCriterion("line16_end >", value, "line16End");
            return (Criteria) this;
        }

        public Criteria orLine16EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line16_end >=", value, "line16End");
            return (Criteria) this;
        }

        public Criteria orLine16EndLessThan(BigDecimal value) {
            orCriterion("line16_end <", value, "line16End");
            return (Criteria) this;
        }

        public Criteria orLine16EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line16_end <=", value, "line16End");
            return (Criteria) this;
        }

        public Criteria andLine16EndIn(List<BigDecimal> values) {
            addCriterion("line16_end in", values, "line16End");
            return (Criteria) this;
        }

        public Criteria andLine16EndNotIn(List<BigDecimal> values) {
            addCriterion("line16_end not in", values, "line16End");
            return (Criteria) this;
        }

        public Criteria andLine16EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line16_end between", value1, value2, "line16End");
            return (Criteria) this;
        }

        public Criteria andLine16EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line16_end not between", value1, value2, "line16End");
            return (Criteria) this;
        }

        public Criteria orLine16EndIn(List<BigDecimal> values) {
            orCriterion("line16_end in", values, "line16End");
            return (Criteria) this;
        }

        public Criteria orLine16EndNotIn(List<BigDecimal> values) {
            orCriterion("line16_end not in", values, "line16End");
            return (Criteria) this;
        }

        public Criteria orLine16EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line16_end between", value1, value2, "line16End");
            return (Criteria) this;
        }

        public Criteria orLine16EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line16_end not between", value1, value2, "line16End");
            return (Criteria) this;
        }

        public Criteria andLine17StartIsNull() {
            addCriterion("line17_start is null");
            return (Criteria) this;
        }

        public Criteria andLine17StartIsNotNull() {
            addCriterion("line17_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine17StartEqualTo(BigDecimal value) {
            addCriterion("line17_start =", value, "line17Start");
            return (Criteria) this;
        }

        public Criteria andLine17StartNotEqualTo(BigDecimal value) {
            addCriterion("line17_start <>", value, "line17Start");
            return (Criteria) this;
        }

        public Criteria andLine17StartGreaterThan(BigDecimal value) {
            addCriterion("line17_start >", value, "line17Start");
            return (Criteria) this;
        }

        public Criteria andLine17StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line17_start >=", value, "line17Start");
            return (Criteria) this;
        }

        public Criteria andLine17StartLessThan(BigDecimal value) {
            addCriterion("line17_start <", value, "line17Start");
            return (Criteria) this;
        }

        public Criteria andLine17StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line17_start <=", value, "line17Start");
            return (Criteria) this;
        }

        public Criteria orLine17StartIsNull() {
            orCriterion("line17_start is null");
            return (Criteria) this;
        }

        public Criteria orLine17StartIsNotNull() {
            orCriterion("line17_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine17StartEqualTo(BigDecimal value) {
            orCriterion("line17_start =", value, "line17Start");
            return (Criteria) this;
        }

        public Criteria orLine17StartNotEqualTo(BigDecimal value) {
            orCriterion("line17_start <>", value, "line17Start");
            return (Criteria) this;
        }

        public Criteria orLine17StartGreaterThan(BigDecimal value) {
            orCriterion("line17_start >", value, "line17Start");
            return (Criteria) this;
        }

        public Criteria orLine17StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line17_start >=", value, "line17Start");
            return (Criteria) this;
        }

        public Criteria orLine17StartLessThan(BigDecimal value) {
            orCriterion("line17_start <", value, "line17Start");
            return (Criteria) this;
        }

        public Criteria orLine17StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line17_start <=", value, "line17Start");
            return (Criteria) this;
        }

        public Criteria andLine17StartIn(List<BigDecimal> values) {
            addCriterion("line17_start in", values, "line17Start");
            return (Criteria) this;
        }

        public Criteria andLine17StartNotIn(List<BigDecimal> values) {
            addCriterion("line17_start not in", values, "line17Start");
            return (Criteria) this;
        }

        public Criteria andLine17StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line17_start between", value1, value2, "line17Start");
            return (Criteria) this;
        }

        public Criteria andLine17StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line17_start not between", value1, value2, "line17Start");
            return (Criteria) this;
        }

        public Criteria orLine17StartIn(List<BigDecimal> values) {
            orCriterion("line17_start in", values, "line17Start");
            return (Criteria) this;
        }

        public Criteria orLine17StartNotIn(List<BigDecimal> values) {
            orCriterion("line17_start not in", values, "line17Start");
            return (Criteria) this;
        }

        public Criteria orLine17StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line17_start between", value1, value2, "line17Start");
            return (Criteria) this;
        }

        public Criteria orLine17StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line17_start not between", value1, value2, "line17Start");
            return (Criteria) this;
        }

        public Criteria andLine17EndIsNull() {
            addCriterion("line17_end is null");
            return (Criteria) this;
        }

        public Criteria andLine17EndIsNotNull() {
            addCriterion("line17_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine17EndEqualTo(BigDecimal value) {
            addCriterion("line17_end =", value, "line17End");
            return (Criteria) this;
        }

        public Criteria andLine17EndNotEqualTo(BigDecimal value) {
            addCriterion("line17_end <>", value, "line17End");
            return (Criteria) this;
        }

        public Criteria andLine17EndGreaterThan(BigDecimal value) {
            addCriterion("line17_end >", value, "line17End");
            return (Criteria) this;
        }

        public Criteria andLine17EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line17_end >=", value, "line17End");
            return (Criteria) this;
        }

        public Criteria andLine17EndLessThan(BigDecimal value) {
            addCriterion("line17_end <", value, "line17End");
            return (Criteria) this;
        }

        public Criteria andLine17EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line17_end <=", value, "line17End");
            return (Criteria) this;
        }

        public Criteria orLine17EndIsNull() {
            orCriterion("line17_end is null");
            return (Criteria) this;
        }

        public Criteria orLine17EndIsNotNull() {
            orCriterion("line17_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine17EndEqualTo(BigDecimal value) {
            orCriterion("line17_end =", value, "line17End");
            return (Criteria) this;
        }

        public Criteria orLine17EndNotEqualTo(BigDecimal value) {
            orCriterion("line17_end <>", value, "line17End");
            return (Criteria) this;
        }

        public Criteria orLine17EndGreaterThan(BigDecimal value) {
            orCriterion("line17_end >", value, "line17End");
            return (Criteria) this;
        }

        public Criteria orLine17EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line17_end >=", value, "line17End");
            return (Criteria) this;
        }

        public Criteria orLine17EndLessThan(BigDecimal value) {
            orCriterion("line17_end <", value, "line17End");
            return (Criteria) this;
        }

        public Criteria orLine17EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line17_end <=", value, "line17End");
            return (Criteria) this;
        }

        public Criteria andLine17EndIn(List<BigDecimal> values) {
            addCriterion("line17_end in", values, "line17End");
            return (Criteria) this;
        }

        public Criteria andLine17EndNotIn(List<BigDecimal> values) {
            addCriterion("line17_end not in", values, "line17End");
            return (Criteria) this;
        }

        public Criteria andLine17EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line17_end between", value1, value2, "line17End");
            return (Criteria) this;
        }

        public Criteria andLine17EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line17_end not between", value1, value2, "line17End");
            return (Criteria) this;
        }

        public Criteria orLine17EndIn(List<BigDecimal> values) {
            orCriterion("line17_end in", values, "line17End");
            return (Criteria) this;
        }

        public Criteria orLine17EndNotIn(List<BigDecimal> values) {
            orCriterion("line17_end not in", values, "line17End");
            return (Criteria) this;
        }

        public Criteria orLine17EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line17_end between", value1, value2, "line17End");
            return (Criteria) this;
        }

        public Criteria orLine17EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line17_end not between", value1, value2, "line17End");
            return (Criteria) this;
        }

        public Criteria andLine18StartIsNull() {
            addCriterion("line18_start is null");
            return (Criteria) this;
        }

        public Criteria andLine18StartIsNotNull() {
            addCriterion("line18_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine18StartEqualTo(BigDecimal value) {
            addCriterion("line18_start =", value, "line18Start");
            return (Criteria) this;
        }

        public Criteria andLine18StartNotEqualTo(BigDecimal value) {
            addCriterion("line18_start <>", value, "line18Start");
            return (Criteria) this;
        }

        public Criteria andLine18StartGreaterThan(BigDecimal value) {
            addCriterion("line18_start >", value, "line18Start");
            return (Criteria) this;
        }

        public Criteria andLine18StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line18_start >=", value, "line18Start");
            return (Criteria) this;
        }

        public Criteria andLine18StartLessThan(BigDecimal value) {
            addCriterion("line18_start <", value, "line18Start");
            return (Criteria) this;
        }

        public Criteria andLine18StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line18_start <=", value, "line18Start");
            return (Criteria) this;
        }

        public Criteria orLine18StartIsNull() {
            orCriterion("line18_start is null");
            return (Criteria) this;
        }

        public Criteria orLine18StartIsNotNull() {
            orCriterion("line18_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine18StartEqualTo(BigDecimal value) {
            orCriterion("line18_start =", value, "line18Start");
            return (Criteria) this;
        }

        public Criteria orLine18StartNotEqualTo(BigDecimal value) {
            orCriterion("line18_start <>", value, "line18Start");
            return (Criteria) this;
        }

        public Criteria orLine18StartGreaterThan(BigDecimal value) {
            orCriterion("line18_start >", value, "line18Start");
            return (Criteria) this;
        }

        public Criteria orLine18StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line18_start >=", value, "line18Start");
            return (Criteria) this;
        }

        public Criteria orLine18StartLessThan(BigDecimal value) {
            orCriterion("line18_start <", value, "line18Start");
            return (Criteria) this;
        }

        public Criteria orLine18StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line18_start <=", value, "line18Start");
            return (Criteria) this;
        }

        public Criteria andLine18StartIn(List<BigDecimal> values) {
            addCriterion("line18_start in", values, "line18Start");
            return (Criteria) this;
        }

        public Criteria andLine18StartNotIn(List<BigDecimal> values) {
            addCriterion("line18_start not in", values, "line18Start");
            return (Criteria) this;
        }

        public Criteria andLine18StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line18_start between", value1, value2, "line18Start");
            return (Criteria) this;
        }

        public Criteria andLine18StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line18_start not between", value1, value2, "line18Start");
            return (Criteria) this;
        }

        public Criteria orLine18StartIn(List<BigDecimal> values) {
            orCriterion("line18_start in", values, "line18Start");
            return (Criteria) this;
        }

        public Criteria orLine18StartNotIn(List<BigDecimal> values) {
            orCriterion("line18_start not in", values, "line18Start");
            return (Criteria) this;
        }

        public Criteria orLine18StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line18_start between", value1, value2, "line18Start");
            return (Criteria) this;
        }

        public Criteria orLine18StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line18_start not between", value1, value2, "line18Start");
            return (Criteria) this;
        }

        public Criteria andLine18EndIsNull() {
            addCriterion("line18_end is null");
            return (Criteria) this;
        }

        public Criteria andLine18EndIsNotNull() {
            addCriterion("line18_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine18EndEqualTo(BigDecimal value) {
            addCriterion("line18_end =", value, "line18End");
            return (Criteria) this;
        }

        public Criteria andLine18EndNotEqualTo(BigDecimal value) {
            addCriterion("line18_end <>", value, "line18End");
            return (Criteria) this;
        }

        public Criteria andLine18EndGreaterThan(BigDecimal value) {
            addCriterion("line18_end >", value, "line18End");
            return (Criteria) this;
        }

        public Criteria andLine18EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line18_end >=", value, "line18End");
            return (Criteria) this;
        }

        public Criteria andLine18EndLessThan(BigDecimal value) {
            addCriterion("line18_end <", value, "line18End");
            return (Criteria) this;
        }

        public Criteria andLine18EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line18_end <=", value, "line18End");
            return (Criteria) this;
        }

        public Criteria orLine18EndIsNull() {
            orCriterion("line18_end is null");
            return (Criteria) this;
        }

        public Criteria orLine18EndIsNotNull() {
            orCriterion("line18_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine18EndEqualTo(BigDecimal value) {
            orCriterion("line18_end =", value, "line18End");
            return (Criteria) this;
        }

        public Criteria orLine18EndNotEqualTo(BigDecimal value) {
            orCriterion("line18_end <>", value, "line18End");
            return (Criteria) this;
        }

        public Criteria orLine18EndGreaterThan(BigDecimal value) {
            orCriterion("line18_end >", value, "line18End");
            return (Criteria) this;
        }

        public Criteria orLine18EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line18_end >=", value, "line18End");
            return (Criteria) this;
        }

        public Criteria orLine18EndLessThan(BigDecimal value) {
            orCriterion("line18_end <", value, "line18End");
            return (Criteria) this;
        }

        public Criteria orLine18EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line18_end <=", value, "line18End");
            return (Criteria) this;
        }

        public Criteria andLine18EndIn(List<BigDecimal> values) {
            addCriterion("line18_end in", values, "line18End");
            return (Criteria) this;
        }

        public Criteria andLine18EndNotIn(List<BigDecimal> values) {
            addCriterion("line18_end not in", values, "line18End");
            return (Criteria) this;
        }

        public Criteria andLine18EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line18_end between", value1, value2, "line18End");
            return (Criteria) this;
        }

        public Criteria andLine18EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line18_end not between", value1, value2, "line18End");
            return (Criteria) this;
        }

        public Criteria orLine18EndIn(List<BigDecimal> values) {
            orCriterion("line18_end in", values, "line18End");
            return (Criteria) this;
        }

        public Criteria orLine18EndNotIn(List<BigDecimal> values) {
            orCriterion("line18_end not in", values, "line18End");
            return (Criteria) this;
        }

        public Criteria orLine18EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line18_end between", value1, value2, "line18End");
            return (Criteria) this;
        }

        public Criteria orLine18EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line18_end not between", value1, value2, "line18End");
            return (Criteria) this;
        }

        public Criteria andLine19StartIsNull() {
            addCriterion("line19_start is null");
            return (Criteria) this;
        }

        public Criteria andLine19StartIsNotNull() {
            addCriterion("line19_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine19StartEqualTo(BigDecimal value) {
            addCriterion("line19_start =", value, "line19Start");
            return (Criteria) this;
        }

        public Criteria andLine19StartNotEqualTo(BigDecimal value) {
            addCriterion("line19_start <>", value, "line19Start");
            return (Criteria) this;
        }

        public Criteria andLine19StartGreaterThan(BigDecimal value) {
            addCriterion("line19_start >", value, "line19Start");
            return (Criteria) this;
        }

        public Criteria andLine19StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line19_start >=", value, "line19Start");
            return (Criteria) this;
        }

        public Criteria andLine19StartLessThan(BigDecimal value) {
            addCriterion("line19_start <", value, "line19Start");
            return (Criteria) this;
        }

        public Criteria andLine19StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line19_start <=", value, "line19Start");
            return (Criteria) this;
        }

        public Criteria orLine19StartIsNull() {
            orCriterion("line19_start is null");
            return (Criteria) this;
        }

        public Criteria orLine19StartIsNotNull() {
            orCriterion("line19_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine19StartEqualTo(BigDecimal value) {
            orCriterion("line19_start =", value, "line19Start");
            return (Criteria) this;
        }

        public Criteria orLine19StartNotEqualTo(BigDecimal value) {
            orCriterion("line19_start <>", value, "line19Start");
            return (Criteria) this;
        }

        public Criteria orLine19StartGreaterThan(BigDecimal value) {
            orCriterion("line19_start >", value, "line19Start");
            return (Criteria) this;
        }

        public Criteria orLine19StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line19_start >=", value, "line19Start");
            return (Criteria) this;
        }

        public Criteria orLine19StartLessThan(BigDecimal value) {
            orCriterion("line19_start <", value, "line19Start");
            return (Criteria) this;
        }

        public Criteria orLine19StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line19_start <=", value, "line19Start");
            return (Criteria) this;
        }

        public Criteria andLine19StartIn(List<BigDecimal> values) {
            addCriterion("line19_start in", values, "line19Start");
            return (Criteria) this;
        }

        public Criteria andLine19StartNotIn(List<BigDecimal> values) {
            addCriterion("line19_start not in", values, "line19Start");
            return (Criteria) this;
        }

        public Criteria andLine19StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line19_start between", value1, value2, "line19Start");
            return (Criteria) this;
        }

        public Criteria andLine19StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line19_start not between", value1, value2, "line19Start");
            return (Criteria) this;
        }

        public Criteria orLine19StartIn(List<BigDecimal> values) {
            orCriterion("line19_start in", values, "line19Start");
            return (Criteria) this;
        }

        public Criteria orLine19StartNotIn(List<BigDecimal> values) {
            orCriterion("line19_start not in", values, "line19Start");
            return (Criteria) this;
        }

        public Criteria orLine19StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line19_start between", value1, value2, "line19Start");
            return (Criteria) this;
        }

        public Criteria orLine19StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line19_start not between", value1, value2, "line19Start");
            return (Criteria) this;
        }

        public Criteria andLine19EndIsNull() {
            addCriterion("line19_end is null");
            return (Criteria) this;
        }

        public Criteria andLine19EndIsNotNull() {
            addCriterion("line19_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine19EndEqualTo(BigDecimal value) {
            addCriterion("line19_end =", value, "line19End");
            return (Criteria) this;
        }

        public Criteria andLine19EndNotEqualTo(BigDecimal value) {
            addCriterion("line19_end <>", value, "line19End");
            return (Criteria) this;
        }

        public Criteria andLine19EndGreaterThan(BigDecimal value) {
            addCriterion("line19_end >", value, "line19End");
            return (Criteria) this;
        }

        public Criteria andLine19EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line19_end >=", value, "line19End");
            return (Criteria) this;
        }

        public Criteria andLine19EndLessThan(BigDecimal value) {
            addCriterion("line19_end <", value, "line19End");
            return (Criteria) this;
        }

        public Criteria andLine19EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line19_end <=", value, "line19End");
            return (Criteria) this;
        }

        public Criteria orLine19EndIsNull() {
            orCriterion("line19_end is null");
            return (Criteria) this;
        }

        public Criteria orLine19EndIsNotNull() {
            orCriterion("line19_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine19EndEqualTo(BigDecimal value) {
            orCriterion("line19_end =", value, "line19End");
            return (Criteria) this;
        }

        public Criteria orLine19EndNotEqualTo(BigDecimal value) {
            orCriterion("line19_end <>", value, "line19End");
            return (Criteria) this;
        }

        public Criteria orLine19EndGreaterThan(BigDecimal value) {
            orCriterion("line19_end >", value, "line19End");
            return (Criteria) this;
        }

        public Criteria orLine19EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line19_end >=", value, "line19End");
            return (Criteria) this;
        }

        public Criteria orLine19EndLessThan(BigDecimal value) {
            orCriterion("line19_end <", value, "line19End");
            return (Criteria) this;
        }

        public Criteria orLine19EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line19_end <=", value, "line19End");
            return (Criteria) this;
        }

        public Criteria andLine19EndIn(List<BigDecimal> values) {
            addCriterion("line19_end in", values, "line19End");
            return (Criteria) this;
        }

        public Criteria andLine19EndNotIn(List<BigDecimal> values) {
            addCriterion("line19_end not in", values, "line19End");
            return (Criteria) this;
        }

        public Criteria andLine19EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line19_end between", value1, value2, "line19End");
            return (Criteria) this;
        }

        public Criteria andLine19EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line19_end not between", value1, value2, "line19End");
            return (Criteria) this;
        }

        public Criteria orLine19EndIn(List<BigDecimal> values) {
            orCriterion("line19_end in", values, "line19End");
            return (Criteria) this;
        }

        public Criteria orLine19EndNotIn(List<BigDecimal> values) {
            orCriterion("line19_end not in", values, "line19End");
            return (Criteria) this;
        }

        public Criteria orLine19EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line19_end between", value1, value2, "line19End");
            return (Criteria) this;
        }

        public Criteria orLine19EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line19_end not between", value1, value2, "line19End");
            return (Criteria) this;
        }

        public Criteria andLine20StartIsNull() {
            addCriterion("line20_start is null");
            return (Criteria) this;
        }

        public Criteria andLine20StartIsNotNull() {
            addCriterion("line20_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine20StartEqualTo(BigDecimal value) {
            addCriterion("line20_start =", value, "line20Start");
            return (Criteria) this;
        }

        public Criteria andLine20StartNotEqualTo(BigDecimal value) {
            addCriterion("line20_start <>", value, "line20Start");
            return (Criteria) this;
        }

        public Criteria andLine20StartGreaterThan(BigDecimal value) {
            addCriterion("line20_start >", value, "line20Start");
            return (Criteria) this;
        }

        public Criteria andLine20StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line20_start >=", value, "line20Start");
            return (Criteria) this;
        }

        public Criteria andLine20StartLessThan(BigDecimal value) {
            addCriterion("line20_start <", value, "line20Start");
            return (Criteria) this;
        }

        public Criteria andLine20StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line20_start <=", value, "line20Start");
            return (Criteria) this;
        }

        public Criteria orLine20StartIsNull() {
            orCriterion("line20_start is null");
            return (Criteria) this;
        }

        public Criteria orLine20StartIsNotNull() {
            orCriterion("line20_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine20StartEqualTo(BigDecimal value) {
            orCriterion("line20_start =", value, "line20Start");
            return (Criteria) this;
        }

        public Criteria orLine20StartNotEqualTo(BigDecimal value) {
            orCriterion("line20_start <>", value, "line20Start");
            return (Criteria) this;
        }

        public Criteria orLine20StartGreaterThan(BigDecimal value) {
            orCriterion("line20_start >", value, "line20Start");
            return (Criteria) this;
        }

        public Criteria orLine20StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line20_start >=", value, "line20Start");
            return (Criteria) this;
        }

        public Criteria orLine20StartLessThan(BigDecimal value) {
            orCriterion("line20_start <", value, "line20Start");
            return (Criteria) this;
        }

        public Criteria orLine20StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line20_start <=", value, "line20Start");
            return (Criteria) this;
        }

        public Criteria andLine20StartIn(List<BigDecimal> values) {
            addCriterion("line20_start in", values, "line20Start");
            return (Criteria) this;
        }

        public Criteria andLine20StartNotIn(List<BigDecimal> values) {
            addCriterion("line20_start not in", values, "line20Start");
            return (Criteria) this;
        }

        public Criteria andLine20StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line20_start between", value1, value2, "line20Start");
            return (Criteria) this;
        }

        public Criteria andLine20StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line20_start not between", value1, value2, "line20Start");
            return (Criteria) this;
        }

        public Criteria orLine20StartIn(List<BigDecimal> values) {
            orCriterion("line20_start in", values, "line20Start");
            return (Criteria) this;
        }

        public Criteria orLine20StartNotIn(List<BigDecimal> values) {
            orCriterion("line20_start not in", values, "line20Start");
            return (Criteria) this;
        }

        public Criteria orLine20StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line20_start between", value1, value2, "line20Start");
            return (Criteria) this;
        }

        public Criteria orLine20StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line20_start not between", value1, value2, "line20Start");
            return (Criteria) this;
        }

        public Criteria andLine20EndIsNull() {
            addCriterion("line20_end is null");
            return (Criteria) this;
        }

        public Criteria andLine20EndIsNotNull() {
            addCriterion("line20_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine20EndEqualTo(BigDecimal value) {
            addCriterion("line20_end =", value, "line20End");
            return (Criteria) this;
        }

        public Criteria andLine20EndNotEqualTo(BigDecimal value) {
            addCriterion("line20_end <>", value, "line20End");
            return (Criteria) this;
        }

        public Criteria andLine20EndGreaterThan(BigDecimal value) {
            addCriterion("line20_end >", value, "line20End");
            return (Criteria) this;
        }

        public Criteria andLine20EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line20_end >=", value, "line20End");
            return (Criteria) this;
        }

        public Criteria andLine20EndLessThan(BigDecimal value) {
            addCriterion("line20_end <", value, "line20End");
            return (Criteria) this;
        }

        public Criteria andLine20EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line20_end <=", value, "line20End");
            return (Criteria) this;
        }

        public Criteria orLine20EndIsNull() {
            orCriterion("line20_end is null");
            return (Criteria) this;
        }

        public Criteria orLine20EndIsNotNull() {
            orCriterion("line20_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine20EndEqualTo(BigDecimal value) {
            orCriterion("line20_end =", value, "line20End");
            return (Criteria) this;
        }

        public Criteria orLine20EndNotEqualTo(BigDecimal value) {
            orCriterion("line20_end <>", value, "line20End");
            return (Criteria) this;
        }

        public Criteria orLine20EndGreaterThan(BigDecimal value) {
            orCriterion("line20_end >", value, "line20End");
            return (Criteria) this;
        }

        public Criteria orLine20EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line20_end >=", value, "line20End");
            return (Criteria) this;
        }

        public Criteria orLine20EndLessThan(BigDecimal value) {
            orCriterion("line20_end <", value, "line20End");
            return (Criteria) this;
        }

        public Criteria orLine20EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line20_end <=", value, "line20End");
            return (Criteria) this;
        }

        public Criteria andLine20EndIn(List<BigDecimal> values) {
            addCriterion("line20_end in", values, "line20End");
            return (Criteria) this;
        }

        public Criteria andLine20EndNotIn(List<BigDecimal> values) {
            addCriterion("line20_end not in", values, "line20End");
            return (Criteria) this;
        }

        public Criteria andLine20EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line20_end between", value1, value2, "line20End");
            return (Criteria) this;
        }

        public Criteria andLine20EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line20_end not between", value1, value2, "line20End");
            return (Criteria) this;
        }

        public Criteria orLine20EndIn(List<BigDecimal> values) {
            orCriterion("line20_end in", values, "line20End");
            return (Criteria) this;
        }

        public Criteria orLine20EndNotIn(List<BigDecimal> values) {
            orCriterion("line20_end not in", values, "line20End");
            return (Criteria) this;
        }

        public Criteria orLine20EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line20_end between", value1, value2, "line20End");
            return (Criteria) this;
        }

        public Criteria orLine20EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line20_end not between", value1, value2, "line20End");
            return (Criteria) this;
        }

        public Criteria andLine21StartIsNull() {
            addCriterion("line21_start is null");
            return (Criteria) this;
        }

        public Criteria andLine21StartIsNotNull() {
            addCriterion("line21_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine21StartEqualTo(BigDecimal value) {
            addCriterion("line21_start =", value, "line21Start");
            return (Criteria) this;
        }

        public Criteria andLine21StartNotEqualTo(BigDecimal value) {
            addCriterion("line21_start <>", value, "line21Start");
            return (Criteria) this;
        }

        public Criteria andLine21StartGreaterThan(BigDecimal value) {
            addCriterion("line21_start >", value, "line21Start");
            return (Criteria) this;
        }

        public Criteria andLine21StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line21_start >=", value, "line21Start");
            return (Criteria) this;
        }

        public Criteria andLine21StartLessThan(BigDecimal value) {
            addCriterion("line21_start <", value, "line21Start");
            return (Criteria) this;
        }

        public Criteria andLine21StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line21_start <=", value, "line21Start");
            return (Criteria) this;
        }

        public Criteria orLine21StartIsNull() {
            orCriterion("line21_start is null");
            return (Criteria) this;
        }

        public Criteria orLine21StartIsNotNull() {
            orCriterion("line21_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine21StartEqualTo(BigDecimal value) {
            orCriterion("line21_start =", value, "line21Start");
            return (Criteria) this;
        }

        public Criteria orLine21StartNotEqualTo(BigDecimal value) {
            orCriterion("line21_start <>", value, "line21Start");
            return (Criteria) this;
        }

        public Criteria orLine21StartGreaterThan(BigDecimal value) {
            orCriterion("line21_start >", value, "line21Start");
            return (Criteria) this;
        }

        public Criteria orLine21StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line21_start >=", value, "line21Start");
            return (Criteria) this;
        }

        public Criteria orLine21StartLessThan(BigDecimal value) {
            orCriterion("line21_start <", value, "line21Start");
            return (Criteria) this;
        }

        public Criteria orLine21StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line21_start <=", value, "line21Start");
            return (Criteria) this;
        }

        public Criteria andLine21StartIn(List<BigDecimal> values) {
            addCriterion("line21_start in", values, "line21Start");
            return (Criteria) this;
        }

        public Criteria andLine21StartNotIn(List<BigDecimal> values) {
            addCriterion("line21_start not in", values, "line21Start");
            return (Criteria) this;
        }

        public Criteria andLine21StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line21_start between", value1, value2, "line21Start");
            return (Criteria) this;
        }

        public Criteria andLine21StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line21_start not between", value1, value2, "line21Start");
            return (Criteria) this;
        }

        public Criteria orLine21StartIn(List<BigDecimal> values) {
            orCriterion("line21_start in", values, "line21Start");
            return (Criteria) this;
        }

        public Criteria orLine21StartNotIn(List<BigDecimal> values) {
            orCriterion("line21_start not in", values, "line21Start");
            return (Criteria) this;
        }

        public Criteria orLine21StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line21_start between", value1, value2, "line21Start");
            return (Criteria) this;
        }

        public Criteria orLine21StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line21_start not between", value1, value2, "line21Start");
            return (Criteria) this;
        }

        public Criteria andLine21EndIsNull() {
            addCriterion("line21_end is null");
            return (Criteria) this;
        }

        public Criteria andLine21EndIsNotNull() {
            addCriterion("line21_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine21EndEqualTo(BigDecimal value) {
            addCriterion("line21_end =", value, "line21End");
            return (Criteria) this;
        }

        public Criteria andLine21EndNotEqualTo(BigDecimal value) {
            addCriterion("line21_end <>", value, "line21End");
            return (Criteria) this;
        }

        public Criteria andLine21EndGreaterThan(BigDecimal value) {
            addCriterion("line21_end >", value, "line21End");
            return (Criteria) this;
        }

        public Criteria andLine21EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line21_end >=", value, "line21End");
            return (Criteria) this;
        }

        public Criteria andLine21EndLessThan(BigDecimal value) {
            addCriterion("line21_end <", value, "line21End");
            return (Criteria) this;
        }

        public Criteria andLine21EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line21_end <=", value, "line21End");
            return (Criteria) this;
        }

        public Criteria orLine21EndIsNull() {
            orCriterion("line21_end is null");
            return (Criteria) this;
        }

        public Criteria orLine21EndIsNotNull() {
            orCriterion("line21_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine21EndEqualTo(BigDecimal value) {
            orCriterion("line21_end =", value, "line21End");
            return (Criteria) this;
        }

        public Criteria orLine21EndNotEqualTo(BigDecimal value) {
            orCriterion("line21_end <>", value, "line21End");
            return (Criteria) this;
        }

        public Criteria orLine21EndGreaterThan(BigDecimal value) {
            orCriterion("line21_end >", value, "line21End");
            return (Criteria) this;
        }

        public Criteria orLine21EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line21_end >=", value, "line21End");
            return (Criteria) this;
        }

        public Criteria orLine21EndLessThan(BigDecimal value) {
            orCriterion("line21_end <", value, "line21End");
            return (Criteria) this;
        }

        public Criteria orLine21EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line21_end <=", value, "line21End");
            return (Criteria) this;
        }

        public Criteria andLine21EndIn(List<BigDecimal> values) {
            addCriterion("line21_end in", values, "line21End");
            return (Criteria) this;
        }

        public Criteria andLine21EndNotIn(List<BigDecimal> values) {
            addCriterion("line21_end not in", values, "line21End");
            return (Criteria) this;
        }

        public Criteria andLine21EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line21_end between", value1, value2, "line21End");
            return (Criteria) this;
        }

        public Criteria andLine21EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line21_end not between", value1, value2, "line21End");
            return (Criteria) this;
        }

        public Criteria orLine21EndIn(List<BigDecimal> values) {
            orCriterion("line21_end in", values, "line21End");
            return (Criteria) this;
        }

        public Criteria orLine21EndNotIn(List<BigDecimal> values) {
            orCriterion("line21_end not in", values, "line21End");
            return (Criteria) this;
        }

        public Criteria orLine21EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line21_end between", value1, value2, "line21End");
            return (Criteria) this;
        }

        public Criteria orLine21EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line21_end not between", value1, value2, "line21End");
            return (Criteria) this;
        }

        public Criteria andLine22StartIsNull() {
            addCriterion("line22_start is null");
            return (Criteria) this;
        }

        public Criteria andLine22StartIsNotNull() {
            addCriterion("line22_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine22StartEqualTo(BigDecimal value) {
            addCriterion("line22_start =", value, "line22Start");
            return (Criteria) this;
        }

        public Criteria andLine22StartNotEqualTo(BigDecimal value) {
            addCriterion("line22_start <>", value, "line22Start");
            return (Criteria) this;
        }

        public Criteria andLine22StartGreaterThan(BigDecimal value) {
            addCriterion("line22_start >", value, "line22Start");
            return (Criteria) this;
        }

        public Criteria andLine22StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line22_start >=", value, "line22Start");
            return (Criteria) this;
        }

        public Criteria andLine22StartLessThan(BigDecimal value) {
            addCriterion("line22_start <", value, "line22Start");
            return (Criteria) this;
        }

        public Criteria andLine22StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line22_start <=", value, "line22Start");
            return (Criteria) this;
        }

        public Criteria orLine22StartIsNull() {
            orCriterion("line22_start is null");
            return (Criteria) this;
        }

        public Criteria orLine22StartIsNotNull() {
            orCriterion("line22_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine22StartEqualTo(BigDecimal value) {
            orCriterion("line22_start =", value, "line22Start");
            return (Criteria) this;
        }

        public Criteria orLine22StartNotEqualTo(BigDecimal value) {
            orCriterion("line22_start <>", value, "line22Start");
            return (Criteria) this;
        }

        public Criteria orLine22StartGreaterThan(BigDecimal value) {
            orCriterion("line22_start >", value, "line22Start");
            return (Criteria) this;
        }

        public Criteria orLine22StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line22_start >=", value, "line22Start");
            return (Criteria) this;
        }

        public Criteria orLine22StartLessThan(BigDecimal value) {
            orCriterion("line22_start <", value, "line22Start");
            return (Criteria) this;
        }

        public Criteria orLine22StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line22_start <=", value, "line22Start");
            return (Criteria) this;
        }

        public Criteria andLine22StartIn(List<BigDecimal> values) {
            addCriterion("line22_start in", values, "line22Start");
            return (Criteria) this;
        }

        public Criteria andLine22StartNotIn(List<BigDecimal> values) {
            addCriterion("line22_start not in", values, "line22Start");
            return (Criteria) this;
        }

        public Criteria andLine22StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line22_start between", value1, value2, "line22Start");
            return (Criteria) this;
        }

        public Criteria andLine22StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line22_start not between", value1, value2, "line22Start");
            return (Criteria) this;
        }

        public Criteria orLine22StartIn(List<BigDecimal> values) {
            orCriterion("line22_start in", values, "line22Start");
            return (Criteria) this;
        }

        public Criteria orLine22StartNotIn(List<BigDecimal> values) {
            orCriterion("line22_start not in", values, "line22Start");
            return (Criteria) this;
        }

        public Criteria orLine22StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line22_start between", value1, value2, "line22Start");
            return (Criteria) this;
        }

        public Criteria orLine22StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line22_start not between", value1, value2, "line22Start");
            return (Criteria) this;
        }

        public Criteria andLine22EndIsNull() {
            addCriterion("line22_end is null");
            return (Criteria) this;
        }

        public Criteria andLine22EndIsNotNull() {
            addCriterion("line22_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine22EndEqualTo(BigDecimal value) {
            addCriterion("line22_end =", value, "line22End");
            return (Criteria) this;
        }

        public Criteria andLine22EndNotEqualTo(BigDecimal value) {
            addCriterion("line22_end <>", value, "line22End");
            return (Criteria) this;
        }

        public Criteria andLine22EndGreaterThan(BigDecimal value) {
            addCriterion("line22_end >", value, "line22End");
            return (Criteria) this;
        }

        public Criteria andLine22EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line22_end >=", value, "line22End");
            return (Criteria) this;
        }

        public Criteria andLine22EndLessThan(BigDecimal value) {
            addCriterion("line22_end <", value, "line22End");
            return (Criteria) this;
        }

        public Criteria andLine22EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line22_end <=", value, "line22End");
            return (Criteria) this;
        }

        public Criteria orLine22EndIsNull() {
            orCriterion("line22_end is null");
            return (Criteria) this;
        }

        public Criteria orLine22EndIsNotNull() {
            orCriterion("line22_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine22EndEqualTo(BigDecimal value) {
            orCriterion("line22_end =", value, "line22End");
            return (Criteria) this;
        }

        public Criteria orLine22EndNotEqualTo(BigDecimal value) {
            orCriterion("line22_end <>", value, "line22End");
            return (Criteria) this;
        }

        public Criteria orLine22EndGreaterThan(BigDecimal value) {
            orCriterion("line22_end >", value, "line22End");
            return (Criteria) this;
        }

        public Criteria orLine22EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line22_end >=", value, "line22End");
            return (Criteria) this;
        }

        public Criteria orLine22EndLessThan(BigDecimal value) {
            orCriterion("line22_end <", value, "line22End");
            return (Criteria) this;
        }

        public Criteria orLine22EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line22_end <=", value, "line22End");
            return (Criteria) this;
        }

        public Criteria andLine22EndIn(List<BigDecimal> values) {
            addCriterion("line22_end in", values, "line22End");
            return (Criteria) this;
        }

        public Criteria andLine22EndNotIn(List<BigDecimal> values) {
            addCriterion("line22_end not in", values, "line22End");
            return (Criteria) this;
        }

        public Criteria andLine22EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line22_end between", value1, value2, "line22End");
            return (Criteria) this;
        }

        public Criteria andLine22EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line22_end not between", value1, value2, "line22End");
            return (Criteria) this;
        }

        public Criteria orLine22EndIn(List<BigDecimal> values) {
            orCriterion("line22_end in", values, "line22End");
            return (Criteria) this;
        }

        public Criteria orLine22EndNotIn(List<BigDecimal> values) {
            orCriterion("line22_end not in", values, "line22End");
            return (Criteria) this;
        }

        public Criteria orLine22EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line22_end between", value1, value2, "line22End");
            return (Criteria) this;
        }

        public Criteria orLine22EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line22_end not between", value1, value2, "line22End");
            return (Criteria) this;
        }

        public Criteria andLine23StartIsNull() {
            addCriterion("line23_start is null");
            return (Criteria) this;
        }

        public Criteria andLine23StartIsNotNull() {
            addCriterion("line23_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine23StartEqualTo(BigDecimal value) {
            addCriterion("line23_start =", value, "line23Start");
            return (Criteria) this;
        }

        public Criteria andLine23StartNotEqualTo(BigDecimal value) {
            addCriterion("line23_start <>", value, "line23Start");
            return (Criteria) this;
        }

        public Criteria andLine23StartGreaterThan(BigDecimal value) {
            addCriterion("line23_start >", value, "line23Start");
            return (Criteria) this;
        }

        public Criteria andLine23StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line23_start >=", value, "line23Start");
            return (Criteria) this;
        }

        public Criteria andLine23StartLessThan(BigDecimal value) {
            addCriterion("line23_start <", value, "line23Start");
            return (Criteria) this;
        }

        public Criteria andLine23StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line23_start <=", value, "line23Start");
            return (Criteria) this;
        }

        public Criteria orLine23StartIsNull() {
            orCriterion("line23_start is null");
            return (Criteria) this;
        }

        public Criteria orLine23StartIsNotNull() {
            orCriterion("line23_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine23StartEqualTo(BigDecimal value) {
            orCriterion("line23_start =", value, "line23Start");
            return (Criteria) this;
        }

        public Criteria orLine23StartNotEqualTo(BigDecimal value) {
            orCriterion("line23_start <>", value, "line23Start");
            return (Criteria) this;
        }

        public Criteria orLine23StartGreaterThan(BigDecimal value) {
            orCriterion("line23_start >", value, "line23Start");
            return (Criteria) this;
        }

        public Criteria orLine23StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line23_start >=", value, "line23Start");
            return (Criteria) this;
        }

        public Criteria orLine23StartLessThan(BigDecimal value) {
            orCriterion("line23_start <", value, "line23Start");
            return (Criteria) this;
        }

        public Criteria orLine23StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line23_start <=", value, "line23Start");
            return (Criteria) this;
        }

        public Criteria andLine23StartIn(List<BigDecimal> values) {
            addCriterion("line23_start in", values, "line23Start");
            return (Criteria) this;
        }

        public Criteria andLine23StartNotIn(List<BigDecimal> values) {
            addCriterion("line23_start not in", values, "line23Start");
            return (Criteria) this;
        }

        public Criteria andLine23StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line23_start between", value1, value2, "line23Start");
            return (Criteria) this;
        }

        public Criteria andLine23StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line23_start not between", value1, value2, "line23Start");
            return (Criteria) this;
        }

        public Criteria orLine23StartIn(List<BigDecimal> values) {
            orCriterion("line23_start in", values, "line23Start");
            return (Criteria) this;
        }

        public Criteria orLine23StartNotIn(List<BigDecimal> values) {
            orCriterion("line23_start not in", values, "line23Start");
            return (Criteria) this;
        }

        public Criteria orLine23StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line23_start between", value1, value2, "line23Start");
            return (Criteria) this;
        }

        public Criteria orLine23StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line23_start not between", value1, value2, "line23Start");
            return (Criteria) this;
        }

        public Criteria andLine23EndIsNull() {
            addCriterion("line23_end is null");
            return (Criteria) this;
        }

        public Criteria andLine23EndIsNotNull() {
            addCriterion("line23_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine23EndEqualTo(BigDecimal value) {
            addCriterion("line23_end =", value, "line23End");
            return (Criteria) this;
        }

        public Criteria andLine23EndNotEqualTo(BigDecimal value) {
            addCriterion("line23_end <>", value, "line23End");
            return (Criteria) this;
        }

        public Criteria andLine23EndGreaterThan(BigDecimal value) {
            addCriterion("line23_end >", value, "line23End");
            return (Criteria) this;
        }

        public Criteria andLine23EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line23_end >=", value, "line23End");
            return (Criteria) this;
        }

        public Criteria andLine23EndLessThan(BigDecimal value) {
            addCriterion("line23_end <", value, "line23End");
            return (Criteria) this;
        }

        public Criteria andLine23EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line23_end <=", value, "line23End");
            return (Criteria) this;
        }

        public Criteria orLine23EndIsNull() {
            orCriterion("line23_end is null");
            return (Criteria) this;
        }

        public Criteria orLine23EndIsNotNull() {
            orCriterion("line23_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine23EndEqualTo(BigDecimal value) {
            orCriterion("line23_end =", value, "line23End");
            return (Criteria) this;
        }

        public Criteria orLine23EndNotEqualTo(BigDecimal value) {
            orCriterion("line23_end <>", value, "line23End");
            return (Criteria) this;
        }

        public Criteria orLine23EndGreaterThan(BigDecimal value) {
            orCriterion("line23_end >", value, "line23End");
            return (Criteria) this;
        }

        public Criteria orLine23EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line23_end >=", value, "line23End");
            return (Criteria) this;
        }

        public Criteria orLine23EndLessThan(BigDecimal value) {
            orCriterion("line23_end <", value, "line23End");
            return (Criteria) this;
        }

        public Criteria orLine23EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line23_end <=", value, "line23End");
            return (Criteria) this;
        }

        public Criteria andLine23EndIn(List<BigDecimal> values) {
            addCriterion("line23_end in", values, "line23End");
            return (Criteria) this;
        }

        public Criteria andLine23EndNotIn(List<BigDecimal> values) {
            addCriterion("line23_end not in", values, "line23End");
            return (Criteria) this;
        }

        public Criteria andLine23EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line23_end between", value1, value2, "line23End");
            return (Criteria) this;
        }

        public Criteria andLine23EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line23_end not between", value1, value2, "line23End");
            return (Criteria) this;
        }

        public Criteria orLine23EndIn(List<BigDecimal> values) {
            orCriterion("line23_end in", values, "line23End");
            return (Criteria) this;
        }

        public Criteria orLine23EndNotIn(List<BigDecimal> values) {
            orCriterion("line23_end not in", values, "line23End");
            return (Criteria) this;
        }

        public Criteria orLine23EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line23_end between", value1, value2, "line23End");
            return (Criteria) this;
        }

        public Criteria orLine23EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line23_end not between", value1, value2, "line23End");
            return (Criteria) this;
        }

        public Criteria andLine24StartIsNull() {
            addCriterion("line24_start is null");
            return (Criteria) this;
        }

        public Criteria andLine24StartIsNotNull() {
            addCriterion("line24_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine24StartEqualTo(BigDecimal value) {
            addCriterion("line24_start =", value, "line24Start");
            return (Criteria) this;
        }

        public Criteria andLine24StartNotEqualTo(BigDecimal value) {
            addCriterion("line24_start <>", value, "line24Start");
            return (Criteria) this;
        }

        public Criteria andLine24StartGreaterThan(BigDecimal value) {
            addCriterion("line24_start >", value, "line24Start");
            return (Criteria) this;
        }

        public Criteria andLine24StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line24_start >=", value, "line24Start");
            return (Criteria) this;
        }

        public Criteria andLine24StartLessThan(BigDecimal value) {
            addCriterion("line24_start <", value, "line24Start");
            return (Criteria) this;
        }

        public Criteria andLine24StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line24_start <=", value, "line24Start");
            return (Criteria) this;
        }

        public Criteria orLine24StartIsNull() {
            orCriterion("line24_start is null");
            return (Criteria) this;
        }

        public Criteria orLine24StartIsNotNull() {
            orCriterion("line24_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine24StartEqualTo(BigDecimal value) {
            orCriterion("line24_start =", value, "line24Start");
            return (Criteria) this;
        }

        public Criteria orLine24StartNotEqualTo(BigDecimal value) {
            orCriterion("line24_start <>", value, "line24Start");
            return (Criteria) this;
        }

        public Criteria orLine24StartGreaterThan(BigDecimal value) {
            orCriterion("line24_start >", value, "line24Start");
            return (Criteria) this;
        }

        public Criteria orLine24StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line24_start >=", value, "line24Start");
            return (Criteria) this;
        }

        public Criteria orLine24StartLessThan(BigDecimal value) {
            orCriterion("line24_start <", value, "line24Start");
            return (Criteria) this;
        }

        public Criteria orLine24StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line24_start <=", value, "line24Start");
            return (Criteria) this;
        }

        public Criteria andLine24StartIn(List<BigDecimal> values) {
            addCriterion("line24_start in", values, "line24Start");
            return (Criteria) this;
        }

        public Criteria andLine24StartNotIn(List<BigDecimal> values) {
            addCriterion("line24_start not in", values, "line24Start");
            return (Criteria) this;
        }

        public Criteria andLine24StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line24_start between", value1, value2, "line24Start");
            return (Criteria) this;
        }

        public Criteria andLine24StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line24_start not between", value1, value2, "line24Start");
            return (Criteria) this;
        }

        public Criteria orLine24StartIn(List<BigDecimal> values) {
            orCriterion("line24_start in", values, "line24Start");
            return (Criteria) this;
        }

        public Criteria orLine24StartNotIn(List<BigDecimal> values) {
            orCriterion("line24_start not in", values, "line24Start");
            return (Criteria) this;
        }

        public Criteria orLine24StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line24_start between", value1, value2, "line24Start");
            return (Criteria) this;
        }

        public Criteria orLine24StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line24_start not between", value1, value2, "line24Start");
            return (Criteria) this;
        }

        public Criteria andLine24EndIsNull() {
            addCriterion("line24_end is null");
            return (Criteria) this;
        }

        public Criteria andLine24EndIsNotNull() {
            addCriterion("line24_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine24EndEqualTo(BigDecimal value) {
            addCriterion("line24_end =", value, "line24End");
            return (Criteria) this;
        }

        public Criteria andLine24EndNotEqualTo(BigDecimal value) {
            addCriterion("line24_end <>", value, "line24End");
            return (Criteria) this;
        }

        public Criteria andLine24EndGreaterThan(BigDecimal value) {
            addCriterion("line24_end >", value, "line24End");
            return (Criteria) this;
        }

        public Criteria andLine24EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line24_end >=", value, "line24End");
            return (Criteria) this;
        }

        public Criteria andLine24EndLessThan(BigDecimal value) {
            addCriterion("line24_end <", value, "line24End");
            return (Criteria) this;
        }

        public Criteria andLine24EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line24_end <=", value, "line24End");
            return (Criteria) this;
        }

        public Criteria orLine24EndIsNull() {
            orCriterion("line24_end is null");
            return (Criteria) this;
        }

        public Criteria orLine24EndIsNotNull() {
            orCriterion("line24_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine24EndEqualTo(BigDecimal value) {
            orCriterion("line24_end =", value, "line24End");
            return (Criteria) this;
        }

        public Criteria orLine24EndNotEqualTo(BigDecimal value) {
            orCriterion("line24_end <>", value, "line24End");
            return (Criteria) this;
        }

        public Criteria orLine24EndGreaterThan(BigDecimal value) {
            orCriterion("line24_end >", value, "line24End");
            return (Criteria) this;
        }

        public Criteria orLine24EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line24_end >=", value, "line24End");
            return (Criteria) this;
        }

        public Criteria orLine24EndLessThan(BigDecimal value) {
            orCriterion("line24_end <", value, "line24End");
            return (Criteria) this;
        }

        public Criteria orLine24EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line24_end <=", value, "line24End");
            return (Criteria) this;
        }

        public Criteria andLine24EndIn(List<BigDecimal> values) {
            addCriterion("line24_end in", values, "line24End");
            return (Criteria) this;
        }

        public Criteria andLine24EndNotIn(List<BigDecimal> values) {
            addCriterion("line24_end not in", values, "line24End");
            return (Criteria) this;
        }

        public Criteria andLine24EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line24_end between", value1, value2, "line24End");
            return (Criteria) this;
        }

        public Criteria andLine24EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line24_end not between", value1, value2, "line24End");
            return (Criteria) this;
        }

        public Criteria orLine24EndIn(List<BigDecimal> values) {
            orCriterion("line24_end in", values, "line24End");
            return (Criteria) this;
        }

        public Criteria orLine24EndNotIn(List<BigDecimal> values) {
            orCriterion("line24_end not in", values, "line24End");
            return (Criteria) this;
        }

        public Criteria orLine24EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line24_end between", value1, value2, "line24End");
            return (Criteria) this;
        }

        public Criteria orLine24EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line24_end not between", value1, value2, "line24End");
            return (Criteria) this;
        }

        public Criteria andLine25StartIsNull() {
            addCriterion("line25_start is null");
            return (Criteria) this;
        }

        public Criteria andLine25StartIsNotNull() {
            addCriterion("line25_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine25StartEqualTo(BigDecimal value) {
            addCriterion("line25_start =", value, "line25Start");
            return (Criteria) this;
        }

        public Criteria andLine25StartNotEqualTo(BigDecimal value) {
            addCriterion("line25_start <>", value, "line25Start");
            return (Criteria) this;
        }

        public Criteria andLine25StartGreaterThan(BigDecimal value) {
            addCriterion("line25_start >", value, "line25Start");
            return (Criteria) this;
        }

        public Criteria andLine25StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line25_start >=", value, "line25Start");
            return (Criteria) this;
        }

        public Criteria andLine25StartLessThan(BigDecimal value) {
            addCriterion("line25_start <", value, "line25Start");
            return (Criteria) this;
        }

        public Criteria andLine25StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line25_start <=", value, "line25Start");
            return (Criteria) this;
        }

        public Criteria orLine25StartIsNull() {
            orCriterion("line25_start is null");
            return (Criteria) this;
        }

        public Criteria orLine25StartIsNotNull() {
            orCriterion("line25_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine25StartEqualTo(BigDecimal value) {
            orCriterion("line25_start =", value, "line25Start");
            return (Criteria) this;
        }

        public Criteria orLine25StartNotEqualTo(BigDecimal value) {
            orCriterion("line25_start <>", value, "line25Start");
            return (Criteria) this;
        }

        public Criteria orLine25StartGreaterThan(BigDecimal value) {
            orCriterion("line25_start >", value, "line25Start");
            return (Criteria) this;
        }

        public Criteria orLine25StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line25_start >=", value, "line25Start");
            return (Criteria) this;
        }

        public Criteria orLine25StartLessThan(BigDecimal value) {
            orCriterion("line25_start <", value, "line25Start");
            return (Criteria) this;
        }

        public Criteria orLine25StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line25_start <=", value, "line25Start");
            return (Criteria) this;
        }

        public Criteria andLine25StartIn(List<BigDecimal> values) {
            addCriterion("line25_start in", values, "line25Start");
            return (Criteria) this;
        }

        public Criteria andLine25StartNotIn(List<BigDecimal> values) {
            addCriterion("line25_start not in", values, "line25Start");
            return (Criteria) this;
        }

        public Criteria andLine25StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line25_start between", value1, value2, "line25Start");
            return (Criteria) this;
        }

        public Criteria andLine25StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line25_start not between", value1, value2, "line25Start");
            return (Criteria) this;
        }

        public Criteria orLine25StartIn(List<BigDecimal> values) {
            orCriterion("line25_start in", values, "line25Start");
            return (Criteria) this;
        }

        public Criteria orLine25StartNotIn(List<BigDecimal> values) {
            orCriterion("line25_start not in", values, "line25Start");
            return (Criteria) this;
        }

        public Criteria orLine25StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line25_start between", value1, value2, "line25Start");
            return (Criteria) this;
        }

        public Criteria orLine25StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line25_start not between", value1, value2, "line25Start");
            return (Criteria) this;
        }

        public Criteria andLine25EndIsNull() {
            addCriterion("line25_end is null");
            return (Criteria) this;
        }

        public Criteria andLine25EndIsNotNull() {
            addCriterion("line25_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine25EndEqualTo(BigDecimal value) {
            addCriterion("line25_end =", value, "line25End");
            return (Criteria) this;
        }

        public Criteria andLine25EndNotEqualTo(BigDecimal value) {
            addCriterion("line25_end <>", value, "line25End");
            return (Criteria) this;
        }

        public Criteria andLine25EndGreaterThan(BigDecimal value) {
            addCriterion("line25_end >", value, "line25End");
            return (Criteria) this;
        }

        public Criteria andLine25EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line25_end >=", value, "line25End");
            return (Criteria) this;
        }

        public Criteria andLine25EndLessThan(BigDecimal value) {
            addCriterion("line25_end <", value, "line25End");
            return (Criteria) this;
        }

        public Criteria andLine25EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line25_end <=", value, "line25End");
            return (Criteria) this;
        }

        public Criteria orLine25EndIsNull() {
            orCriterion("line25_end is null");
            return (Criteria) this;
        }

        public Criteria orLine25EndIsNotNull() {
            orCriterion("line25_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine25EndEqualTo(BigDecimal value) {
            orCriterion("line25_end =", value, "line25End");
            return (Criteria) this;
        }

        public Criteria orLine25EndNotEqualTo(BigDecimal value) {
            orCriterion("line25_end <>", value, "line25End");
            return (Criteria) this;
        }

        public Criteria orLine25EndGreaterThan(BigDecimal value) {
            orCriterion("line25_end >", value, "line25End");
            return (Criteria) this;
        }

        public Criteria orLine25EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line25_end >=", value, "line25End");
            return (Criteria) this;
        }

        public Criteria orLine25EndLessThan(BigDecimal value) {
            orCriterion("line25_end <", value, "line25End");
            return (Criteria) this;
        }

        public Criteria orLine25EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line25_end <=", value, "line25End");
            return (Criteria) this;
        }

        public Criteria andLine25EndIn(List<BigDecimal> values) {
            addCriterion("line25_end in", values, "line25End");
            return (Criteria) this;
        }

        public Criteria andLine25EndNotIn(List<BigDecimal> values) {
            addCriterion("line25_end not in", values, "line25End");
            return (Criteria) this;
        }

        public Criteria andLine25EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line25_end between", value1, value2, "line25End");
            return (Criteria) this;
        }

        public Criteria andLine25EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line25_end not between", value1, value2, "line25End");
            return (Criteria) this;
        }

        public Criteria orLine25EndIn(List<BigDecimal> values) {
            orCriterion("line25_end in", values, "line25End");
            return (Criteria) this;
        }

        public Criteria orLine25EndNotIn(List<BigDecimal> values) {
            orCriterion("line25_end not in", values, "line25End");
            return (Criteria) this;
        }

        public Criteria orLine25EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line25_end between", value1, value2, "line25End");
            return (Criteria) this;
        }

        public Criteria orLine25EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line25_end not between", value1, value2, "line25End");
            return (Criteria) this;
        }

        public Criteria andLine26StartIsNull() {
            addCriterion("line26_start is null");
            return (Criteria) this;
        }

        public Criteria andLine26StartIsNotNull() {
            addCriterion("line26_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine26StartEqualTo(BigDecimal value) {
            addCriterion("line26_start =", value, "line26Start");
            return (Criteria) this;
        }

        public Criteria andLine26StartNotEqualTo(BigDecimal value) {
            addCriterion("line26_start <>", value, "line26Start");
            return (Criteria) this;
        }

        public Criteria andLine26StartGreaterThan(BigDecimal value) {
            addCriterion("line26_start >", value, "line26Start");
            return (Criteria) this;
        }

        public Criteria andLine26StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line26_start >=", value, "line26Start");
            return (Criteria) this;
        }

        public Criteria andLine26StartLessThan(BigDecimal value) {
            addCriterion("line26_start <", value, "line26Start");
            return (Criteria) this;
        }

        public Criteria andLine26StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line26_start <=", value, "line26Start");
            return (Criteria) this;
        }

        public Criteria orLine26StartIsNull() {
            orCriterion("line26_start is null");
            return (Criteria) this;
        }

        public Criteria orLine26StartIsNotNull() {
            orCriterion("line26_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine26StartEqualTo(BigDecimal value) {
            orCriterion("line26_start =", value, "line26Start");
            return (Criteria) this;
        }

        public Criteria orLine26StartNotEqualTo(BigDecimal value) {
            orCriterion("line26_start <>", value, "line26Start");
            return (Criteria) this;
        }

        public Criteria orLine26StartGreaterThan(BigDecimal value) {
            orCriterion("line26_start >", value, "line26Start");
            return (Criteria) this;
        }

        public Criteria orLine26StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line26_start >=", value, "line26Start");
            return (Criteria) this;
        }

        public Criteria orLine26StartLessThan(BigDecimal value) {
            orCriterion("line26_start <", value, "line26Start");
            return (Criteria) this;
        }

        public Criteria orLine26StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line26_start <=", value, "line26Start");
            return (Criteria) this;
        }

        public Criteria andLine26StartIn(List<BigDecimal> values) {
            addCriterion("line26_start in", values, "line26Start");
            return (Criteria) this;
        }

        public Criteria andLine26StartNotIn(List<BigDecimal> values) {
            addCriterion("line26_start not in", values, "line26Start");
            return (Criteria) this;
        }

        public Criteria andLine26StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line26_start between", value1, value2, "line26Start");
            return (Criteria) this;
        }

        public Criteria andLine26StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line26_start not between", value1, value2, "line26Start");
            return (Criteria) this;
        }

        public Criteria orLine26StartIn(List<BigDecimal> values) {
            orCriterion("line26_start in", values, "line26Start");
            return (Criteria) this;
        }

        public Criteria orLine26StartNotIn(List<BigDecimal> values) {
            orCriterion("line26_start not in", values, "line26Start");
            return (Criteria) this;
        }

        public Criteria orLine26StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line26_start between", value1, value2, "line26Start");
            return (Criteria) this;
        }

        public Criteria orLine26StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line26_start not between", value1, value2, "line26Start");
            return (Criteria) this;
        }

        public Criteria andLine26EndIsNull() {
            addCriterion("line26_end is null");
            return (Criteria) this;
        }

        public Criteria andLine26EndIsNotNull() {
            addCriterion("line26_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine26EndEqualTo(BigDecimal value) {
            addCriterion("line26_end =", value, "line26End");
            return (Criteria) this;
        }

        public Criteria andLine26EndNotEqualTo(BigDecimal value) {
            addCriterion("line26_end <>", value, "line26End");
            return (Criteria) this;
        }

        public Criteria andLine26EndGreaterThan(BigDecimal value) {
            addCriterion("line26_end >", value, "line26End");
            return (Criteria) this;
        }

        public Criteria andLine26EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line26_end >=", value, "line26End");
            return (Criteria) this;
        }

        public Criteria andLine26EndLessThan(BigDecimal value) {
            addCriterion("line26_end <", value, "line26End");
            return (Criteria) this;
        }

        public Criteria andLine26EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line26_end <=", value, "line26End");
            return (Criteria) this;
        }

        public Criteria orLine26EndIsNull() {
            orCriterion("line26_end is null");
            return (Criteria) this;
        }

        public Criteria orLine26EndIsNotNull() {
            orCriterion("line26_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine26EndEqualTo(BigDecimal value) {
            orCriterion("line26_end =", value, "line26End");
            return (Criteria) this;
        }

        public Criteria orLine26EndNotEqualTo(BigDecimal value) {
            orCriterion("line26_end <>", value, "line26End");
            return (Criteria) this;
        }

        public Criteria orLine26EndGreaterThan(BigDecimal value) {
            orCriterion("line26_end >", value, "line26End");
            return (Criteria) this;
        }

        public Criteria orLine26EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line26_end >=", value, "line26End");
            return (Criteria) this;
        }

        public Criteria orLine26EndLessThan(BigDecimal value) {
            orCriterion("line26_end <", value, "line26End");
            return (Criteria) this;
        }

        public Criteria orLine26EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line26_end <=", value, "line26End");
            return (Criteria) this;
        }

        public Criteria andLine26EndIn(List<BigDecimal> values) {
            addCriterion("line26_end in", values, "line26End");
            return (Criteria) this;
        }

        public Criteria andLine26EndNotIn(List<BigDecimal> values) {
            addCriterion("line26_end not in", values, "line26End");
            return (Criteria) this;
        }

        public Criteria andLine26EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line26_end between", value1, value2, "line26End");
            return (Criteria) this;
        }

        public Criteria andLine26EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line26_end not between", value1, value2, "line26End");
            return (Criteria) this;
        }

        public Criteria orLine26EndIn(List<BigDecimal> values) {
            orCriterion("line26_end in", values, "line26End");
            return (Criteria) this;
        }

        public Criteria orLine26EndNotIn(List<BigDecimal> values) {
            orCriterion("line26_end not in", values, "line26End");
            return (Criteria) this;
        }

        public Criteria orLine26EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line26_end between", value1, value2, "line26End");
            return (Criteria) this;
        }

        public Criteria orLine26EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line26_end not between", value1, value2, "line26End");
            return (Criteria) this;
        }

        public Criteria andLine27StartIsNull() {
            addCriterion("line27_start is null");
            return (Criteria) this;
        }

        public Criteria andLine27StartIsNotNull() {
            addCriterion("line27_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine27StartEqualTo(BigDecimal value) {
            addCriterion("line27_start =", value, "line27Start");
            return (Criteria) this;
        }

        public Criteria andLine27StartNotEqualTo(BigDecimal value) {
            addCriterion("line27_start <>", value, "line27Start");
            return (Criteria) this;
        }

        public Criteria andLine27StartGreaterThan(BigDecimal value) {
            addCriterion("line27_start >", value, "line27Start");
            return (Criteria) this;
        }

        public Criteria andLine27StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line27_start >=", value, "line27Start");
            return (Criteria) this;
        }

        public Criteria andLine27StartLessThan(BigDecimal value) {
            addCriterion("line27_start <", value, "line27Start");
            return (Criteria) this;
        }

        public Criteria andLine27StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line27_start <=", value, "line27Start");
            return (Criteria) this;
        }

        public Criteria orLine27StartIsNull() {
            orCriterion("line27_start is null");
            return (Criteria) this;
        }

        public Criteria orLine27StartIsNotNull() {
            orCriterion("line27_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine27StartEqualTo(BigDecimal value) {
            orCriterion("line27_start =", value, "line27Start");
            return (Criteria) this;
        }

        public Criteria orLine27StartNotEqualTo(BigDecimal value) {
            orCriterion("line27_start <>", value, "line27Start");
            return (Criteria) this;
        }

        public Criteria orLine27StartGreaterThan(BigDecimal value) {
            orCriterion("line27_start >", value, "line27Start");
            return (Criteria) this;
        }

        public Criteria orLine27StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line27_start >=", value, "line27Start");
            return (Criteria) this;
        }

        public Criteria orLine27StartLessThan(BigDecimal value) {
            orCriterion("line27_start <", value, "line27Start");
            return (Criteria) this;
        }

        public Criteria orLine27StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line27_start <=", value, "line27Start");
            return (Criteria) this;
        }

        public Criteria andLine27StartIn(List<BigDecimal> values) {
            addCriterion("line27_start in", values, "line27Start");
            return (Criteria) this;
        }

        public Criteria andLine27StartNotIn(List<BigDecimal> values) {
            addCriterion("line27_start not in", values, "line27Start");
            return (Criteria) this;
        }

        public Criteria andLine27StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line27_start between", value1, value2, "line27Start");
            return (Criteria) this;
        }

        public Criteria andLine27StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line27_start not between", value1, value2, "line27Start");
            return (Criteria) this;
        }

        public Criteria orLine27StartIn(List<BigDecimal> values) {
            orCriterion("line27_start in", values, "line27Start");
            return (Criteria) this;
        }

        public Criteria orLine27StartNotIn(List<BigDecimal> values) {
            orCriterion("line27_start not in", values, "line27Start");
            return (Criteria) this;
        }

        public Criteria orLine27StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line27_start between", value1, value2, "line27Start");
            return (Criteria) this;
        }

        public Criteria orLine27StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line27_start not between", value1, value2, "line27Start");
            return (Criteria) this;
        }

        public Criteria andLine27EndIsNull() {
            addCriterion("line27_end is null");
            return (Criteria) this;
        }

        public Criteria andLine27EndIsNotNull() {
            addCriterion("line27_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine27EndEqualTo(BigDecimal value) {
            addCriterion("line27_end =", value, "line27End");
            return (Criteria) this;
        }

        public Criteria andLine27EndNotEqualTo(BigDecimal value) {
            addCriterion("line27_end <>", value, "line27End");
            return (Criteria) this;
        }

        public Criteria andLine27EndGreaterThan(BigDecimal value) {
            addCriterion("line27_end >", value, "line27End");
            return (Criteria) this;
        }

        public Criteria andLine27EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line27_end >=", value, "line27End");
            return (Criteria) this;
        }

        public Criteria andLine27EndLessThan(BigDecimal value) {
            addCriterion("line27_end <", value, "line27End");
            return (Criteria) this;
        }

        public Criteria andLine27EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line27_end <=", value, "line27End");
            return (Criteria) this;
        }

        public Criteria orLine27EndIsNull() {
            orCriterion("line27_end is null");
            return (Criteria) this;
        }

        public Criteria orLine27EndIsNotNull() {
            orCriterion("line27_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine27EndEqualTo(BigDecimal value) {
            orCriterion("line27_end =", value, "line27End");
            return (Criteria) this;
        }

        public Criteria orLine27EndNotEqualTo(BigDecimal value) {
            orCriterion("line27_end <>", value, "line27End");
            return (Criteria) this;
        }

        public Criteria orLine27EndGreaterThan(BigDecimal value) {
            orCriterion("line27_end >", value, "line27End");
            return (Criteria) this;
        }

        public Criteria orLine27EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line27_end >=", value, "line27End");
            return (Criteria) this;
        }

        public Criteria orLine27EndLessThan(BigDecimal value) {
            orCriterion("line27_end <", value, "line27End");
            return (Criteria) this;
        }

        public Criteria orLine27EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line27_end <=", value, "line27End");
            return (Criteria) this;
        }

        public Criteria andLine27EndIn(List<BigDecimal> values) {
            addCriterion("line27_end in", values, "line27End");
            return (Criteria) this;
        }

        public Criteria andLine27EndNotIn(List<BigDecimal> values) {
            addCriterion("line27_end not in", values, "line27End");
            return (Criteria) this;
        }

        public Criteria andLine27EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line27_end between", value1, value2, "line27End");
            return (Criteria) this;
        }

        public Criteria andLine27EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line27_end not between", value1, value2, "line27End");
            return (Criteria) this;
        }

        public Criteria orLine27EndIn(List<BigDecimal> values) {
            orCriterion("line27_end in", values, "line27End");
            return (Criteria) this;
        }

        public Criteria orLine27EndNotIn(List<BigDecimal> values) {
            orCriterion("line27_end not in", values, "line27End");
            return (Criteria) this;
        }

        public Criteria orLine27EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line27_end between", value1, value2, "line27End");
            return (Criteria) this;
        }

        public Criteria orLine27EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line27_end not between", value1, value2, "line27End");
            return (Criteria) this;
        }

        public Criteria andLine28StartIsNull() {
            addCriterion("line28_start is null");
            return (Criteria) this;
        }

        public Criteria andLine28StartIsNotNull() {
            addCriterion("line28_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine28StartEqualTo(BigDecimal value) {
            addCriterion("line28_start =", value, "line28Start");
            return (Criteria) this;
        }

        public Criteria andLine28StartNotEqualTo(BigDecimal value) {
            addCriterion("line28_start <>", value, "line28Start");
            return (Criteria) this;
        }

        public Criteria andLine28StartGreaterThan(BigDecimal value) {
            addCriterion("line28_start >", value, "line28Start");
            return (Criteria) this;
        }

        public Criteria andLine28StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line28_start >=", value, "line28Start");
            return (Criteria) this;
        }

        public Criteria andLine28StartLessThan(BigDecimal value) {
            addCriterion("line28_start <", value, "line28Start");
            return (Criteria) this;
        }

        public Criteria andLine28StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line28_start <=", value, "line28Start");
            return (Criteria) this;
        }

        public Criteria orLine28StartIsNull() {
            orCriterion("line28_start is null");
            return (Criteria) this;
        }

        public Criteria orLine28StartIsNotNull() {
            orCriterion("line28_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine28StartEqualTo(BigDecimal value) {
            orCriterion("line28_start =", value, "line28Start");
            return (Criteria) this;
        }

        public Criteria orLine28StartNotEqualTo(BigDecimal value) {
            orCriterion("line28_start <>", value, "line28Start");
            return (Criteria) this;
        }

        public Criteria orLine28StartGreaterThan(BigDecimal value) {
            orCriterion("line28_start >", value, "line28Start");
            return (Criteria) this;
        }

        public Criteria orLine28StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line28_start >=", value, "line28Start");
            return (Criteria) this;
        }

        public Criteria orLine28StartLessThan(BigDecimal value) {
            orCriterion("line28_start <", value, "line28Start");
            return (Criteria) this;
        }

        public Criteria orLine28StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line28_start <=", value, "line28Start");
            return (Criteria) this;
        }

        public Criteria andLine28StartIn(List<BigDecimal> values) {
            addCriterion("line28_start in", values, "line28Start");
            return (Criteria) this;
        }

        public Criteria andLine28StartNotIn(List<BigDecimal> values) {
            addCriterion("line28_start not in", values, "line28Start");
            return (Criteria) this;
        }

        public Criteria andLine28StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line28_start between", value1, value2, "line28Start");
            return (Criteria) this;
        }

        public Criteria andLine28StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line28_start not between", value1, value2, "line28Start");
            return (Criteria) this;
        }

        public Criteria orLine28StartIn(List<BigDecimal> values) {
            orCriterion("line28_start in", values, "line28Start");
            return (Criteria) this;
        }

        public Criteria orLine28StartNotIn(List<BigDecimal> values) {
            orCriterion("line28_start not in", values, "line28Start");
            return (Criteria) this;
        }

        public Criteria orLine28StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line28_start between", value1, value2, "line28Start");
            return (Criteria) this;
        }

        public Criteria orLine28StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line28_start not between", value1, value2, "line28Start");
            return (Criteria) this;
        }

        public Criteria andLine28EndIsNull() {
            addCriterion("line28_end is null");
            return (Criteria) this;
        }

        public Criteria andLine28EndIsNotNull() {
            addCriterion("line28_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine28EndEqualTo(BigDecimal value) {
            addCriterion("line28_end =", value, "line28End");
            return (Criteria) this;
        }

        public Criteria andLine28EndNotEqualTo(BigDecimal value) {
            addCriterion("line28_end <>", value, "line28End");
            return (Criteria) this;
        }

        public Criteria andLine28EndGreaterThan(BigDecimal value) {
            addCriterion("line28_end >", value, "line28End");
            return (Criteria) this;
        }

        public Criteria andLine28EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line28_end >=", value, "line28End");
            return (Criteria) this;
        }

        public Criteria andLine28EndLessThan(BigDecimal value) {
            addCriterion("line28_end <", value, "line28End");
            return (Criteria) this;
        }

        public Criteria andLine28EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line28_end <=", value, "line28End");
            return (Criteria) this;
        }

        public Criteria orLine28EndIsNull() {
            orCriterion("line28_end is null");
            return (Criteria) this;
        }

        public Criteria orLine28EndIsNotNull() {
            orCriterion("line28_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine28EndEqualTo(BigDecimal value) {
            orCriterion("line28_end =", value, "line28End");
            return (Criteria) this;
        }

        public Criteria orLine28EndNotEqualTo(BigDecimal value) {
            orCriterion("line28_end <>", value, "line28End");
            return (Criteria) this;
        }

        public Criteria orLine28EndGreaterThan(BigDecimal value) {
            orCriterion("line28_end >", value, "line28End");
            return (Criteria) this;
        }

        public Criteria orLine28EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line28_end >=", value, "line28End");
            return (Criteria) this;
        }

        public Criteria orLine28EndLessThan(BigDecimal value) {
            orCriterion("line28_end <", value, "line28End");
            return (Criteria) this;
        }

        public Criteria orLine28EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line28_end <=", value, "line28End");
            return (Criteria) this;
        }

        public Criteria andLine28EndIn(List<BigDecimal> values) {
            addCriterion("line28_end in", values, "line28End");
            return (Criteria) this;
        }

        public Criteria andLine28EndNotIn(List<BigDecimal> values) {
            addCriterion("line28_end not in", values, "line28End");
            return (Criteria) this;
        }

        public Criteria andLine28EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line28_end between", value1, value2, "line28End");
            return (Criteria) this;
        }

        public Criteria andLine28EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line28_end not between", value1, value2, "line28End");
            return (Criteria) this;
        }

        public Criteria orLine28EndIn(List<BigDecimal> values) {
            orCriterion("line28_end in", values, "line28End");
            return (Criteria) this;
        }

        public Criteria orLine28EndNotIn(List<BigDecimal> values) {
            orCriterion("line28_end not in", values, "line28End");
            return (Criteria) this;
        }

        public Criteria orLine28EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line28_end between", value1, value2, "line28End");
            return (Criteria) this;
        }

        public Criteria orLine28EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line28_end not between", value1, value2, "line28End");
            return (Criteria) this;
        }

        public Criteria andLine29StartIsNull() {
            addCriterion("line29_start is null");
            return (Criteria) this;
        }

        public Criteria andLine29StartIsNotNull() {
            addCriterion("line29_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine29StartEqualTo(BigDecimal value) {
            addCriterion("line29_start =", value, "line29Start");
            return (Criteria) this;
        }

        public Criteria andLine29StartNotEqualTo(BigDecimal value) {
            addCriterion("line29_start <>", value, "line29Start");
            return (Criteria) this;
        }

        public Criteria andLine29StartGreaterThan(BigDecimal value) {
            addCriterion("line29_start >", value, "line29Start");
            return (Criteria) this;
        }

        public Criteria andLine29StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line29_start >=", value, "line29Start");
            return (Criteria) this;
        }

        public Criteria andLine29StartLessThan(BigDecimal value) {
            addCriterion("line29_start <", value, "line29Start");
            return (Criteria) this;
        }

        public Criteria andLine29StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line29_start <=", value, "line29Start");
            return (Criteria) this;
        }

        public Criteria orLine29StartIsNull() {
            orCriterion("line29_start is null");
            return (Criteria) this;
        }

        public Criteria orLine29StartIsNotNull() {
            orCriterion("line29_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine29StartEqualTo(BigDecimal value) {
            orCriterion("line29_start =", value, "line29Start");
            return (Criteria) this;
        }

        public Criteria orLine29StartNotEqualTo(BigDecimal value) {
            orCriterion("line29_start <>", value, "line29Start");
            return (Criteria) this;
        }

        public Criteria orLine29StartGreaterThan(BigDecimal value) {
            orCriterion("line29_start >", value, "line29Start");
            return (Criteria) this;
        }

        public Criteria orLine29StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line29_start >=", value, "line29Start");
            return (Criteria) this;
        }

        public Criteria orLine29StartLessThan(BigDecimal value) {
            orCriterion("line29_start <", value, "line29Start");
            return (Criteria) this;
        }

        public Criteria orLine29StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line29_start <=", value, "line29Start");
            return (Criteria) this;
        }

        public Criteria andLine29StartIn(List<BigDecimal> values) {
            addCriterion("line29_start in", values, "line29Start");
            return (Criteria) this;
        }

        public Criteria andLine29StartNotIn(List<BigDecimal> values) {
            addCriterion("line29_start not in", values, "line29Start");
            return (Criteria) this;
        }

        public Criteria andLine29StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line29_start between", value1, value2, "line29Start");
            return (Criteria) this;
        }

        public Criteria andLine29StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line29_start not between", value1, value2, "line29Start");
            return (Criteria) this;
        }

        public Criteria orLine29StartIn(List<BigDecimal> values) {
            orCriterion("line29_start in", values, "line29Start");
            return (Criteria) this;
        }

        public Criteria orLine29StartNotIn(List<BigDecimal> values) {
            orCriterion("line29_start not in", values, "line29Start");
            return (Criteria) this;
        }

        public Criteria orLine29StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line29_start between", value1, value2, "line29Start");
            return (Criteria) this;
        }

        public Criteria orLine29StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line29_start not between", value1, value2, "line29Start");
            return (Criteria) this;
        }

        public Criteria andLine29EndIsNull() {
            addCriterion("line29_end is null");
            return (Criteria) this;
        }

        public Criteria andLine29EndIsNotNull() {
            addCriterion("line29_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine29EndEqualTo(BigDecimal value) {
            addCriterion("line29_end =", value, "line29End");
            return (Criteria) this;
        }

        public Criteria andLine29EndNotEqualTo(BigDecimal value) {
            addCriterion("line29_end <>", value, "line29End");
            return (Criteria) this;
        }

        public Criteria andLine29EndGreaterThan(BigDecimal value) {
            addCriterion("line29_end >", value, "line29End");
            return (Criteria) this;
        }

        public Criteria andLine29EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line29_end >=", value, "line29End");
            return (Criteria) this;
        }

        public Criteria andLine29EndLessThan(BigDecimal value) {
            addCriterion("line29_end <", value, "line29End");
            return (Criteria) this;
        }

        public Criteria andLine29EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line29_end <=", value, "line29End");
            return (Criteria) this;
        }

        public Criteria orLine29EndIsNull() {
            orCriterion("line29_end is null");
            return (Criteria) this;
        }

        public Criteria orLine29EndIsNotNull() {
            orCriterion("line29_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine29EndEqualTo(BigDecimal value) {
            orCriterion("line29_end =", value, "line29End");
            return (Criteria) this;
        }

        public Criteria orLine29EndNotEqualTo(BigDecimal value) {
            orCriterion("line29_end <>", value, "line29End");
            return (Criteria) this;
        }

        public Criteria orLine29EndGreaterThan(BigDecimal value) {
            orCriterion("line29_end >", value, "line29End");
            return (Criteria) this;
        }

        public Criteria orLine29EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line29_end >=", value, "line29End");
            return (Criteria) this;
        }

        public Criteria orLine29EndLessThan(BigDecimal value) {
            orCriterion("line29_end <", value, "line29End");
            return (Criteria) this;
        }

        public Criteria orLine29EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line29_end <=", value, "line29End");
            return (Criteria) this;
        }

        public Criteria andLine29EndIn(List<BigDecimal> values) {
            addCriterion("line29_end in", values, "line29End");
            return (Criteria) this;
        }

        public Criteria andLine29EndNotIn(List<BigDecimal> values) {
            addCriterion("line29_end not in", values, "line29End");
            return (Criteria) this;
        }

        public Criteria andLine29EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line29_end between", value1, value2, "line29End");
            return (Criteria) this;
        }

        public Criteria andLine29EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line29_end not between", value1, value2, "line29End");
            return (Criteria) this;
        }

        public Criteria orLine29EndIn(List<BigDecimal> values) {
            orCriterion("line29_end in", values, "line29End");
            return (Criteria) this;
        }

        public Criteria orLine29EndNotIn(List<BigDecimal> values) {
            orCriterion("line29_end not in", values, "line29End");
            return (Criteria) this;
        }

        public Criteria orLine29EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line29_end between", value1, value2, "line29End");
            return (Criteria) this;
        }

        public Criteria orLine29EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line29_end not between", value1, value2, "line29End");
            return (Criteria) this;
        }

        public Criteria andLine30StartIsNull() {
            addCriterion("line30_start is null");
            return (Criteria) this;
        }

        public Criteria andLine30StartIsNotNull() {
            addCriterion("line30_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine30StartEqualTo(BigDecimal value) {
            addCriterion("line30_start =", value, "line30Start");
            return (Criteria) this;
        }

        public Criteria andLine30StartNotEqualTo(BigDecimal value) {
            addCriterion("line30_start <>", value, "line30Start");
            return (Criteria) this;
        }

        public Criteria andLine30StartGreaterThan(BigDecimal value) {
            addCriterion("line30_start >", value, "line30Start");
            return (Criteria) this;
        }

        public Criteria andLine30StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line30_start >=", value, "line30Start");
            return (Criteria) this;
        }

        public Criteria andLine30StartLessThan(BigDecimal value) {
            addCriterion("line30_start <", value, "line30Start");
            return (Criteria) this;
        }

        public Criteria andLine30StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line30_start <=", value, "line30Start");
            return (Criteria) this;
        }

        public Criteria orLine30StartIsNull() {
            orCriterion("line30_start is null");
            return (Criteria) this;
        }

        public Criteria orLine30StartIsNotNull() {
            orCriterion("line30_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine30StartEqualTo(BigDecimal value) {
            orCriterion("line30_start =", value, "line30Start");
            return (Criteria) this;
        }

        public Criteria orLine30StartNotEqualTo(BigDecimal value) {
            orCriterion("line30_start <>", value, "line30Start");
            return (Criteria) this;
        }

        public Criteria orLine30StartGreaterThan(BigDecimal value) {
            orCriterion("line30_start >", value, "line30Start");
            return (Criteria) this;
        }

        public Criteria orLine30StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line30_start >=", value, "line30Start");
            return (Criteria) this;
        }

        public Criteria orLine30StartLessThan(BigDecimal value) {
            orCriterion("line30_start <", value, "line30Start");
            return (Criteria) this;
        }

        public Criteria orLine30StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line30_start <=", value, "line30Start");
            return (Criteria) this;
        }

        public Criteria andLine30StartIn(List<BigDecimal> values) {
            addCriterion("line30_start in", values, "line30Start");
            return (Criteria) this;
        }

        public Criteria andLine30StartNotIn(List<BigDecimal> values) {
            addCriterion("line30_start not in", values, "line30Start");
            return (Criteria) this;
        }

        public Criteria andLine30StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line30_start between", value1, value2, "line30Start");
            return (Criteria) this;
        }

        public Criteria andLine30StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line30_start not between", value1, value2, "line30Start");
            return (Criteria) this;
        }

        public Criteria orLine30StartIn(List<BigDecimal> values) {
            orCriterion("line30_start in", values, "line30Start");
            return (Criteria) this;
        }

        public Criteria orLine30StartNotIn(List<BigDecimal> values) {
            orCriterion("line30_start not in", values, "line30Start");
            return (Criteria) this;
        }

        public Criteria orLine30StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line30_start between", value1, value2, "line30Start");
            return (Criteria) this;
        }

        public Criteria orLine30StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line30_start not between", value1, value2, "line30Start");
            return (Criteria) this;
        }

        public Criteria andLine30EndIsNull() {
            addCriterion("line30_end is null");
            return (Criteria) this;
        }

        public Criteria andLine30EndIsNotNull() {
            addCriterion("line30_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine30EndEqualTo(BigDecimal value) {
            addCriterion("line30_end =", value, "line30End");
            return (Criteria) this;
        }

        public Criteria andLine30EndNotEqualTo(BigDecimal value) {
            addCriterion("line30_end <>", value, "line30End");
            return (Criteria) this;
        }

        public Criteria andLine30EndGreaterThan(BigDecimal value) {
            addCriterion("line30_end >", value, "line30End");
            return (Criteria) this;
        }

        public Criteria andLine30EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line30_end >=", value, "line30End");
            return (Criteria) this;
        }

        public Criteria andLine30EndLessThan(BigDecimal value) {
            addCriterion("line30_end <", value, "line30End");
            return (Criteria) this;
        }

        public Criteria andLine30EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line30_end <=", value, "line30End");
            return (Criteria) this;
        }

        public Criteria orLine30EndIsNull() {
            orCriterion("line30_end is null");
            return (Criteria) this;
        }

        public Criteria orLine30EndIsNotNull() {
            orCriterion("line30_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine30EndEqualTo(BigDecimal value) {
            orCriterion("line30_end =", value, "line30End");
            return (Criteria) this;
        }

        public Criteria orLine30EndNotEqualTo(BigDecimal value) {
            orCriterion("line30_end <>", value, "line30End");
            return (Criteria) this;
        }

        public Criteria orLine30EndGreaterThan(BigDecimal value) {
            orCriterion("line30_end >", value, "line30End");
            return (Criteria) this;
        }

        public Criteria orLine30EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line30_end >=", value, "line30End");
            return (Criteria) this;
        }

        public Criteria orLine30EndLessThan(BigDecimal value) {
            orCriterion("line30_end <", value, "line30End");
            return (Criteria) this;
        }

        public Criteria orLine30EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line30_end <=", value, "line30End");
            return (Criteria) this;
        }

        public Criteria andLine30EndIn(List<BigDecimal> values) {
            addCriterion("line30_end in", values, "line30End");
            return (Criteria) this;
        }

        public Criteria andLine30EndNotIn(List<BigDecimal> values) {
            addCriterion("line30_end not in", values, "line30End");
            return (Criteria) this;
        }

        public Criteria andLine30EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line30_end between", value1, value2, "line30End");
            return (Criteria) this;
        }

        public Criteria andLine30EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line30_end not between", value1, value2, "line30End");
            return (Criteria) this;
        }

        public Criteria orLine30EndIn(List<BigDecimal> values) {
            orCriterion("line30_end in", values, "line30End");
            return (Criteria) this;
        }

        public Criteria orLine30EndNotIn(List<BigDecimal> values) {
            orCriterion("line30_end not in", values, "line30End");
            return (Criteria) this;
        }

        public Criteria orLine30EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line30_end between", value1, value2, "line30End");
            return (Criteria) this;
        }

        public Criteria orLine30EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line30_end not between", value1, value2, "line30End");
            return (Criteria) this;
        }

        public Criteria andLine31StartIsNull() {
            addCriterion("line31_start is null");
            return (Criteria) this;
        }

        public Criteria andLine31StartIsNotNull() {
            addCriterion("line31_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine31StartEqualTo(BigDecimal value) {
            addCriterion("line31_start =", value, "line31Start");
            return (Criteria) this;
        }

        public Criteria andLine31StartNotEqualTo(BigDecimal value) {
            addCriterion("line31_start <>", value, "line31Start");
            return (Criteria) this;
        }

        public Criteria andLine31StartGreaterThan(BigDecimal value) {
            addCriterion("line31_start >", value, "line31Start");
            return (Criteria) this;
        }

        public Criteria andLine31StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line31_start >=", value, "line31Start");
            return (Criteria) this;
        }

        public Criteria andLine31StartLessThan(BigDecimal value) {
            addCriterion("line31_start <", value, "line31Start");
            return (Criteria) this;
        }

        public Criteria andLine31StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line31_start <=", value, "line31Start");
            return (Criteria) this;
        }

        public Criteria orLine31StartIsNull() {
            orCriterion("line31_start is null");
            return (Criteria) this;
        }

        public Criteria orLine31StartIsNotNull() {
            orCriterion("line31_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine31StartEqualTo(BigDecimal value) {
            orCriterion("line31_start =", value, "line31Start");
            return (Criteria) this;
        }

        public Criteria orLine31StartNotEqualTo(BigDecimal value) {
            orCriterion("line31_start <>", value, "line31Start");
            return (Criteria) this;
        }

        public Criteria orLine31StartGreaterThan(BigDecimal value) {
            orCriterion("line31_start >", value, "line31Start");
            return (Criteria) this;
        }

        public Criteria orLine31StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line31_start >=", value, "line31Start");
            return (Criteria) this;
        }

        public Criteria orLine31StartLessThan(BigDecimal value) {
            orCriterion("line31_start <", value, "line31Start");
            return (Criteria) this;
        }

        public Criteria orLine31StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line31_start <=", value, "line31Start");
            return (Criteria) this;
        }

        public Criteria andLine31StartIn(List<BigDecimal> values) {
            addCriterion("line31_start in", values, "line31Start");
            return (Criteria) this;
        }

        public Criteria andLine31StartNotIn(List<BigDecimal> values) {
            addCriterion("line31_start not in", values, "line31Start");
            return (Criteria) this;
        }

        public Criteria andLine31StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line31_start between", value1, value2, "line31Start");
            return (Criteria) this;
        }

        public Criteria andLine31StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line31_start not between", value1, value2, "line31Start");
            return (Criteria) this;
        }

        public Criteria orLine31StartIn(List<BigDecimal> values) {
            orCriterion("line31_start in", values, "line31Start");
            return (Criteria) this;
        }

        public Criteria orLine31StartNotIn(List<BigDecimal> values) {
            orCriterion("line31_start not in", values, "line31Start");
            return (Criteria) this;
        }

        public Criteria orLine31StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line31_start between", value1, value2, "line31Start");
            return (Criteria) this;
        }

        public Criteria orLine31StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line31_start not between", value1, value2, "line31Start");
            return (Criteria) this;
        }

        public Criteria andLine31EndIsNull() {
            addCriterion("line31_end is null");
            return (Criteria) this;
        }

        public Criteria andLine31EndIsNotNull() {
            addCriterion("line31_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine31EndEqualTo(BigDecimal value) {
            addCriterion("line31_end =", value, "line31End");
            return (Criteria) this;
        }

        public Criteria andLine31EndNotEqualTo(BigDecimal value) {
            addCriterion("line31_end <>", value, "line31End");
            return (Criteria) this;
        }

        public Criteria andLine31EndGreaterThan(BigDecimal value) {
            addCriterion("line31_end >", value, "line31End");
            return (Criteria) this;
        }

        public Criteria andLine31EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line31_end >=", value, "line31End");
            return (Criteria) this;
        }

        public Criteria andLine31EndLessThan(BigDecimal value) {
            addCriterion("line31_end <", value, "line31End");
            return (Criteria) this;
        }

        public Criteria andLine31EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line31_end <=", value, "line31End");
            return (Criteria) this;
        }

        public Criteria orLine31EndIsNull() {
            orCriterion("line31_end is null");
            return (Criteria) this;
        }

        public Criteria orLine31EndIsNotNull() {
            orCriterion("line31_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine31EndEqualTo(BigDecimal value) {
            orCriterion("line31_end =", value, "line31End");
            return (Criteria) this;
        }

        public Criteria orLine31EndNotEqualTo(BigDecimal value) {
            orCriterion("line31_end <>", value, "line31End");
            return (Criteria) this;
        }

        public Criteria orLine31EndGreaterThan(BigDecimal value) {
            orCriterion("line31_end >", value, "line31End");
            return (Criteria) this;
        }

        public Criteria orLine31EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line31_end >=", value, "line31End");
            return (Criteria) this;
        }

        public Criteria orLine31EndLessThan(BigDecimal value) {
            orCriterion("line31_end <", value, "line31End");
            return (Criteria) this;
        }

        public Criteria orLine31EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line31_end <=", value, "line31End");
            return (Criteria) this;
        }

        public Criteria andLine31EndIn(List<BigDecimal> values) {
            addCriterion("line31_end in", values, "line31End");
            return (Criteria) this;
        }

        public Criteria andLine31EndNotIn(List<BigDecimal> values) {
            addCriterion("line31_end not in", values, "line31End");
            return (Criteria) this;
        }

        public Criteria andLine31EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line31_end between", value1, value2, "line31End");
            return (Criteria) this;
        }

        public Criteria andLine31EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line31_end not between", value1, value2, "line31End");
            return (Criteria) this;
        }

        public Criteria orLine31EndIn(List<BigDecimal> values) {
            orCriterion("line31_end in", values, "line31End");
            return (Criteria) this;
        }

        public Criteria orLine31EndNotIn(List<BigDecimal> values) {
            orCriterion("line31_end not in", values, "line31End");
            return (Criteria) this;
        }

        public Criteria orLine31EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line31_end between", value1, value2, "line31End");
            return (Criteria) this;
        }

        public Criteria orLine31EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line31_end not between", value1, value2, "line31End");
            return (Criteria) this;
        }

        public Criteria andLine32StartIsNull() {
            addCriterion("line32_start is null");
            return (Criteria) this;
        }

        public Criteria andLine32StartIsNotNull() {
            addCriterion("line32_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine32StartEqualTo(BigDecimal value) {
            addCriterion("line32_start =", value, "line32Start");
            return (Criteria) this;
        }

        public Criteria andLine32StartNotEqualTo(BigDecimal value) {
            addCriterion("line32_start <>", value, "line32Start");
            return (Criteria) this;
        }

        public Criteria andLine32StartGreaterThan(BigDecimal value) {
            addCriterion("line32_start >", value, "line32Start");
            return (Criteria) this;
        }

        public Criteria andLine32StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line32_start >=", value, "line32Start");
            return (Criteria) this;
        }

        public Criteria andLine32StartLessThan(BigDecimal value) {
            addCriterion("line32_start <", value, "line32Start");
            return (Criteria) this;
        }

        public Criteria andLine32StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line32_start <=", value, "line32Start");
            return (Criteria) this;
        }

        public Criteria orLine32StartIsNull() {
            orCriterion("line32_start is null");
            return (Criteria) this;
        }

        public Criteria orLine32StartIsNotNull() {
            orCriterion("line32_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine32StartEqualTo(BigDecimal value) {
            orCriterion("line32_start =", value, "line32Start");
            return (Criteria) this;
        }

        public Criteria orLine32StartNotEqualTo(BigDecimal value) {
            orCriterion("line32_start <>", value, "line32Start");
            return (Criteria) this;
        }

        public Criteria orLine32StartGreaterThan(BigDecimal value) {
            orCriterion("line32_start >", value, "line32Start");
            return (Criteria) this;
        }

        public Criteria orLine32StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line32_start >=", value, "line32Start");
            return (Criteria) this;
        }

        public Criteria orLine32StartLessThan(BigDecimal value) {
            orCriterion("line32_start <", value, "line32Start");
            return (Criteria) this;
        }

        public Criteria orLine32StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line32_start <=", value, "line32Start");
            return (Criteria) this;
        }

        public Criteria andLine32StartIn(List<BigDecimal> values) {
            addCriterion("line32_start in", values, "line32Start");
            return (Criteria) this;
        }

        public Criteria andLine32StartNotIn(List<BigDecimal> values) {
            addCriterion("line32_start not in", values, "line32Start");
            return (Criteria) this;
        }

        public Criteria andLine32StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line32_start between", value1, value2, "line32Start");
            return (Criteria) this;
        }

        public Criteria andLine32StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line32_start not between", value1, value2, "line32Start");
            return (Criteria) this;
        }

        public Criteria orLine32StartIn(List<BigDecimal> values) {
            orCriterion("line32_start in", values, "line32Start");
            return (Criteria) this;
        }

        public Criteria orLine32StartNotIn(List<BigDecimal> values) {
            orCriterion("line32_start not in", values, "line32Start");
            return (Criteria) this;
        }

        public Criteria orLine32StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line32_start between", value1, value2, "line32Start");
            return (Criteria) this;
        }

        public Criteria orLine32StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line32_start not between", value1, value2, "line32Start");
            return (Criteria) this;
        }

        public Criteria andLine32EndIsNull() {
            addCriterion("line32_end is null");
            return (Criteria) this;
        }

        public Criteria andLine32EndIsNotNull() {
            addCriterion("line32_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine32EndEqualTo(BigDecimal value) {
            addCriterion("line32_end =", value, "line32End");
            return (Criteria) this;
        }

        public Criteria andLine32EndNotEqualTo(BigDecimal value) {
            addCriterion("line32_end <>", value, "line32End");
            return (Criteria) this;
        }

        public Criteria andLine32EndGreaterThan(BigDecimal value) {
            addCriterion("line32_end >", value, "line32End");
            return (Criteria) this;
        }

        public Criteria andLine32EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line32_end >=", value, "line32End");
            return (Criteria) this;
        }

        public Criteria andLine32EndLessThan(BigDecimal value) {
            addCriterion("line32_end <", value, "line32End");
            return (Criteria) this;
        }

        public Criteria andLine32EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line32_end <=", value, "line32End");
            return (Criteria) this;
        }

        public Criteria orLine32EndIsNull() {
            orCriterion("line32_end is null");
            return (Criteria) this;
        }

        public Criteria orLine32EndIsNotNull() {
            orCriterion("line32_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine32EndEqualTo(BigDecimal value) {
            orCriterion("line32_end =", value, "line32End");
            return (Criteria) this;
        }

        public Criteria orLine32EndNotEqualTo(BigDecimal value) {
            orCriterion("line32_end <>", value, "line32End");
            return (Criteria) this;
        }

        public Criteria orLine32EndGreaterThan(BigDecimal value) {
            orCriterion("line32_end >", value, "line32End");
            return (Criteria) this;
        }

        public Criteria orLine32EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line32_end >=", value, "line32End");
            return (Criteria) this;
        }

        public Criteria orLine32EndLessThan(BigDecimal value) {
            orCriterion("line32_end <", value, "line32End");
            return (Criteria) this;
        }

        public Criteria orLine32EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line32_end <=", value, "line32End");
            return (Criteria) this;
        }

        public Criteria andLine32EndIn(List<BigDecimal> values) {
            addCriterion("line32_end in", values, "line32End");
            return (Criteria) this;
        }

        public Criteria andLine32EndNotIn(List<BigDecimal> values) {
            addCriterion("line32_end not in", values, "line32End");
            return (Criteria) this;
        }

        public Criteria andLine32EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line32_end between", value1, value2, "line32End");
            return (Criteria) this;
        }

        public Criteria andLine32EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line32_end not between", value1, value2, "line32End");
            return (Criteria) this;
        }

        public Criteria orLine32EndIn(List<BigDecimal> values) {
            orCriterion("line32_end in", values, "line32End");
            return (Criteria) this;
        }

        public Criteria orLine32EndNotIn(List<BigDecimal> values) {
            orCriterion("line32_end not in", values, "line32End");
            return (Criteria) this;
        }

        public Criteria orLine32EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line32_end between", value1, value2, "line32End");
            return (Criteria) this;
        }

        public Criteria orLine32EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line32_end not between", value1, value2, "line32End");
            return (Criteria) this;
        }

        public Criteria andLine33StartIsNull() {
            addCriterion("line33_start is null");
            return (Criteria) this;
        }

        public Criteria andLine33StartIsNotNull() {
            addCriterion("line33_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine33StartEqualTo(BigDecimal value) {
            addCriterion("line33_start =", value, "line33Start");
            return (Criteria) this;
        }

        public Criteria andLine33StartNotEqualTo(BigDecimal value) {
            addCriterion("line33_start <>", value, "line33Start");
            return (Criteria) this;
        }

        public Criteria andLine33StartGreaterThan(BigDecimal value) {
            addCriterion("line33_start >", value, "line33Start");
            return (Criteria) this;
        }

        public Criteria andLine33StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line33_start >=", value, "line33Start");
            return (Criteria) this;
        }

        public Criteria andLine33StartLessThan(BigDecimal value) {
            addCriterion("line33_start <", value, "line33Start");
            return (Criteria) this;
        }

        public Criteria andLine33StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line33_start <=", value, "line33Start");
            return (Criteria) this;
        }

        public Criteria orLine33StartIsNull() {
            orCriterion("line33_start is null");
            return (Criteria) this;
        }

        public Criteria orLine33StartIsNotNull() {
            orCriterion("line33_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine33StartEqualTo(BigDecimal value) {
            orCriterion("line33_start =", value, "line33Start");
            return (Criteria) this;
        }

        public Criteria orLine33StartNotEqualTo(BigDecimal value) {
            orCriterion("line33_start <>", value, "line33Start");
            return (Criteria) this;
        }

        public Criteria orLine33StartGreaterThan(BigDecimal value) {
            orCriterion("line33_start >", value, "line33Start");
            return (Criteria) this;
        }

        public Criteria orLine33StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line33_start >=", value, "line33Start");
            return (Criteria) this;
        }

        public Criteria orLine33StartLessThan(BigDecimal value) {
            orCriterion("line33_start <", value, "line33Start");
            return (Criteria) this;
        }

        public Criteria orLine33StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line33_start <=", value, "line33Start");
            return (Criteria) this;
        }

        public Criteria andLine33StartIn(List<BigDecimal> values) {
            addCriterion("line33_start in", values, "line33Start");
            return (Criteria) this;
        }

        public Criteria andLine33StartNotIn(List<BigDecimal> values) {
            addCriterion("line33_start not in", values, "line33Start");
            return (Criteria) this;
        }

        public Criteria andLine33StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line33_start between", value1, value2, "line33Start");
            return (Criteria) this;
        }

        public Criteria andLine33StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line33_start not between", value1, value2, "line33Start");
            return (Criteria) this;
        }

        public Criteria orLine33StartIn(List<BigDecimal> values) {
            orCriterion("line33_start in", values, "line33Start");
            return (Criteria) this;
        }

        public Criteria orLine33StartNotIn(List<BigDecimal> values) {
            orCriterion("line33_start not in", values, "line33Start");
            return (Criteria) this;
        }

        public Criteria orLine33StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line33_start between", value1, value2, "line33Start");
            return (Criteria) this;
        }

        public Criteria orLine33StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line33_start not between", value1, value2, "line33Start");
            return (Criteria) this;
        }

        public Criteria andLine33EndIsNull() {
            addCriterion("line33_end is null");
            return (Criteria) this;
        }

        public Criteria andLine33EndIsNotNull() {
            addCriterion("line33_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine33EndEqualTo(BigDecimal value) {
            addCriterion("line33_end =", value, "line33End");
            return (Criteria) this;
        }

        public Criteria andLine33EndNotEqualTo(BigDecimal value) {
            addCriterion("line33_end <>", value, "line33End");
            return (Criteria) this;
        }

        public Criteria andLine33EndGreaterThan(BigDecimal value) {
            addCriterion("line33_end >", value, "line33End");
            return (Criteria) this;
        }

        public Criteria andLine33EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line33_end >=", value, "line33End");
            return (Criteria) this;
        }

        public Criteria andLine33EndLessThan(BigDecimal value) {
            addCriterion("line33_end <", value, "line33End");
            return (Criteria) this;
        }

        public Criteria andLine33EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line33_end <=", value, "line33End");
            return (Criteria) this;
        }

        public Criteria orLine33EndIsNull() {
            orCriterion("line33_end is null");
            return (Criteria) this;
        }

        public Criteria orLine33EndIsNotNull() {
            orCriterion("line33_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine33EndEqualTo(BigDecimal value) {
            orCriterion("line33_end =", value, "line33End");
            return (Criteria) this;
        }

        public Criteria orLine33EndNotEqualTo(BigDecimal value) {
            orCriterion("line33_end <>", value, "line33End");
            return (Criteria) this;
        }

        public Criteria orLine33EndGreaterThan(BigDecimal value) {
            orCriterion("line33_end >", value, "line33End");
            return (Criteria) this;
        }

        public Criteria orLine33EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line33_end >=", value, "line33End");
            return (Criteria) this;
        }

        public Criteria orLine33EndLessThan(BigDecimal value) {
            orCriterion("line33_end <", value, "line33End");
            return (Criteria) this;
        }

        public Criteria orLine33EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line33_end <=", value, "line33End");
            return (Criteria) this;
        }

        public Criteria andLine33EndIn(List<BigDecimal> values) {
            addCriterion("line33_end in", values, "line33End");
            return (Criteria) this;
        }

        public Criteria andLine33EndNotIn(List<BigDecimal> values) {
            addCriterion("line33_end not in", values, "line33End");
            return (Criteria) this;
        }

        public Criteria andLine33EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line33_end between", value1, value2, "line33End");
            return (Criteria) this;
        }

        public Criteria andLine33EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line33_end not between", value1, value2, "line33End");
            return (Criteria) this;
        }

        public Criteria orLine33EndIn(List<BigDecimal> values) {
            orCriterion("line33_end in", values, "line33End");
            return (Criteria) this;
        }

        public Criteria orLine33EndNotIn(List<BigDecimal> values) {
            orCriterion("line33_end not in", values, "line33End");
            return (Criteria) this;
        }

        public Criteria orLine33EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line33_end between", value1, value2, "line33End");
            return (Criteria) this;
        }

        public Criteria orLine33EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line33_end not between", value1, value2, "line33End");
            return (Criteria) this;
        }

        public Criteria andLine34StartIsNull() {
            addCriterion("line34_start is null");
            return (Criteria) this;
        }

        public Criteria andLine34StartIsNotNull() {
            addCriterion("line34_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine34StartEqualTo(BigDecimal value) {
            addCriterion("line34_start =", value, "line34Start");
            return (Criteria) this;
        }

        public Criteria andLine34StartNotEqualTo(BigDecimal value) {
            addCriterion("line34_start <>", value, "line34Start");
            return (Criteria) this;
        }

        public Criteria andLine34StartGreaterThan(BigDecimal value) {
            addCriterion("line34_start >", value, "line34Start");
            return (Criteria) this;
        }

        public Criteria andLine34StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line34_start >=", value, "line34Start");
            return (Criteria) this;
        }

        public Criteria andLine34StartLessThan(BigDecimal value) {
            addCriterion("line34_start <", value, "line34Start");
            return (Criteria) this;
        }

        public Criteria andLine34StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line34_start <=", value, "line34Start");
            return (Criteria) this;
        }

        public Criteria orLine34StartIsNull() {
            orCriterion("line34_start is null");
            return (Criteria) this;
        }

        public Criteria orLine34StartIsNotNull() {
            orCriterion("line34_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine34StartEqualTo(BigDecimal value) {
            orCriterion("line34_start =", value, "line34Start");
            return (Criteria) this;
        }

        public Criteria orLine34StartNotEqualTo(BigDecimal value) {
            orCriterion("line34_start <>", value, "line34Start");
            return (Criteria) this;
        }

        public Criteria orLine34StartGreaterThan(BigDecimal value) {
            orCriterion("line34_start >", value, "line34Start");
            return (Criteria) this;
        }

        public Criteria orLine34StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line34_start >=", value, "line34Start");
            return (Criteria) this;
        }

        public Criteria orLine34StartLessThan(BigDecimal value) {
            orCriterion("line34_start <", value, "line34Start");
            return (Criteria) this;
        }

        public Criteria orLine34StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line34_start <=", value, "line34Start");
            return (Criteria) this;
        }

        public Criteria andLine34StartIn(List<BigDecimal> values) {
            addCriterion("line34_start in", values, "line34Start");
            return (Criteria) this;
        }

        public Criteria andLine34StartNotIn(List<BigDecimal> values) {
            addCriterion("line34_start not in", values, "line34Start");
            return (Criteria) this;
        }

        public Criteria andLine34StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line34_start between", value1, value2, "line34Start");
            return (Criteria) this;
        }

        public Criteria andLine34StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line34_start not between", value1, value2, "line34Start");
            return (Criteria) this;
        }

        public Criteria orLine34StartIn(List<BigDecimal> values) {
            orCriterion("line34_start in", values, "line34Start");
            return (Criteria) this;
        }

        public Criteria orLine34StartNotIn(List<BigDecimal> values) {
            orCriterion("line34_start not in", values, "line34Start");
            return (Criteria) this;
        }

        public Criteria orLine34StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line34_start between", value1, value2, "line34Start");
            return (Criteria) this;
        }

        public Criteria orLine34StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line34_start not between", value1, value2, "line34Start");
            return (Criteria) this;
        }

        public Criteria andLine34EndIsNull() {
            addCriterion("line34_end is null");
            return (Criteria) this;
        }

        public Criteria andLine34EndIsNotNull() {
            addCriterion("line34_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine34EndEqualTo(BigDecimal value) {
            addCriterion("line34_end =", value, "line34End");
            return (Criteria) this;
        }

        public Criteria andLine34EndNotEqualTo(BigDecimal value) {
            addCriterion("line34_end <>", value, "line34End");
            return (Criteria) this;
        }

        public Criteria andLine34EndGreaterThan(BigDecimal value) {
            addCriterion("line34_end >", value, "line34End");
            return (Criteria) this;
        }

        public Criteria andLine34EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line34_end >=", value, "line34End");
            return (Criteria) this;
        }

        public Criteria andLine34EndLessThan(BigDecimal value) {
            addCriterion("line34_end <", value, "line34End");
            return (Criteria) this;
        }

        public Criteria andLine34EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line34_end <=", value, "line34End");
            return (Criteria) this;
        }

        public Criteria orLine34EndIsNull() {
            orCriterion("line34_end is null");
            return (Criteria) this;
        }

        public Criteria orLine34EndIsNotNull() {
            orCriterion("line34_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine34EndEqualTo(BigDecimal value) {
            orCriterion("line34_end =", value, "line34End");
            return (Criteria) this;
        }

        public Criteria orLine34EndNotEqualTo(BigDecimal value) {
            orCriterion("line34_end <>", value, "line34End");
            return (Criteria) this;
        }

        public Criteria orLine34EndGreaterThan(BigDecimal value) {
            orCriterion("line34_end >", value, "line34End");
            return (Criteria) this;
        }

        public Criteria orLine34EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line34_end >=", value, "line34End");
            return (Criteria) this;
        }

        public Criteria orLine34EndLessThan(BigDecimal value) {
            orCriterion("line34_end <", value, "line34End");
            return (Criteria) this;
        }

        public Criteria orLine34EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line34_end <=", value, "line34End");
            return (Criteria) this;
        }

        public Criteria andLine34EndIn(List<BigDecimal> values) {
            addCriterion("line34_end in", values, "line34End");
            return (Criteria) this;
        }

        public Criteria andLine34EndNotIn(List<BigDecimal> values) {
            addCriterion("line34_end not in", values, "line34End");
            return (Criteria) this;
        }

        public Criteria andLine34EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line34_end between", value1, value2, "line34End");
            return (Criteria) this;
        }

        public Criteria andLine34EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line34_end not between", value1, value2, "line34End");
            return (Criteria) this;
        }

        public Criteria orLine34EndIn(List<BigDecimal> values) {
            orCriterion("line34_end in", values, "line34End");
            return (Criteria) this;
        }

        public Criteria orLine34EndNotIn(List<BigDecimal> values) {
            orCriterion("line34_end not in", values, "line34End");
            return (Criteria) this;
        }

        public Criteria orLine34EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line34_end between", value1, value2, "line34End");
            return (Criteria) this;
        }

        public Criteria orLine34EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line34_end not between", value1, value2, "line34End");
            return (Criteria) this;
        }

        public Criteria andLine35StartIsNull() {
            addCriterion("line35_start is null");
            return (Criteria) this;
        }

        public Criteria andLine35StartIsNotNull() {
            addCriterion("line35_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine35StartEqualTo(BigDecimal value) {
            addCriterion("line35_start =", value, "line35Start");
            return (Criteria) this;
        }

        public Criteria andLine35StartNotEqualTo(BigDecimal value) {
            addCriterion("line35_start <>", value, "line35Start");
            return (Criteria) this;
        }

        public Criteria andLine35StartGreaterThan(BigDecimal value) {
            addCriterion("line35_start >", value, "line35Start");
            return (Criteria) this;
        }

        public Criteria andLine35StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line35_start >=", value, "line35Start");
            return (Criteria) this;
        }

        public Criteria andLine35StartLessThan(BigDecimal value) {
            addCriterion("line35_start <", value, "line35Start");
            return (Criteria) this;
        }

        public Criteria andLine35StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line35_start <=", value, "line35Start");
            return (Criteria) this;
        }

        public Criteria orLine35StartIsNull() {
            orCriterion("line35_start is null");
            return (Criteria) this;
        }

        public Criteria orLine35StartIsNotNull() {
            orCriterion("line35_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine35StartEqualTo(BigDecimal value) {
            orCriterion("line35_start =", value, "line35Start");
            return (Criteria) this;
        }

        public Criteria orLine35StartNotEqualTo(BigDecimal value) {
            orCriterion("line35_start <>", value, "line35Start");
            return (Criteria) this;
        }

        public Criteria orLine35StartGreaterThan(BigDecimal value) {
            orCriterion("line35_start >", value, "line35Start");
            return (Criteria) this;
        }

        public Criteria orLine35StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line35_start >=", value, "line35Start");
            return (Criteria) this;
        }

        public Criteria orLine35StartLessThan(BigDecimal value) {
            orCriterion("line35_start <", value, "line35Start");
            return (Criteria) this;
        }

        public Criteria orLine35StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line35_start <=", value, "line35Start");
            return (Criteria) this;
        }

        public Criteria andLine35StartIn(List<BigDecimal> values) {
            addCriterion("line35_start in", values, "line35Start");
            return (Criteria) this;
        }

        public Criteria andLine35StartNotIn(List<BigDecimal> values) {
            addCriterion("line35_start not in", values, "line35Start");
            return (Criteria) this;
        }

        public Criteria andLine35StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line35_start between", value1, value2, "line35Start");
            return (Criteria) this;
        }

        public Criteria andLine35StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line35_start not between", value1, value2, "line35Start");
            return (Criteria) this;
        }

        public Criteria orLine35StartIn(List<BigDecimal> values) {
            orCriterion("line35_start in", values, "line35Start");
            return (Criteria) this;
        }

        public Criteria orLine35StartNotIn(List<BigDecimal> values) {
            orCriterion("line35_start not in", values, "line35Start");
            return (Criteria) this;
        }

        public Criteria orLine35StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line35_start between", value1, value2, "line35Start");
            return (Criteria) this;
        }

        public Criteria orLine35StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line35_start not between", value1, value2, "line35Start");
            return (Criteria) this;
        }

        public Criteria andLine35EndIsNull() {
            addCriterion("line35_end is null");
            return (Criteria) this;
        }

        public Criteria andLine35EndIsNotNull() {
            addCriterion("line35_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine35EndEqualTo(BigDecimal value) {
            addCriterion("line35_end =", value, "line35End");
            return (Criteria) this;
        }

        public Criteria andLine35EndNotEqualTo(BigDecimal value) {
            addCriterion("line35_end <>", value, "line35End");
            return (Criteria) this;
        }

        public Criteria andLine35EndGreaterThan(BigDecimal value) {
            addCriterion("line35_end >", value, "line35End");
            return (Criteria) this;
        }

        public Criteria andLine35EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line35_end >=", value, "line35End");
            return (Criteria) this;
        }

        public Criteria andLine35EndLessThan(BigDecimal value) {
            addCriterion("line35_end <", value, "line35End");
            return (Criteria) this;
        }

        public Criteria andLine35EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line35_end <=", value, "line35End");
            return (Criteria) this;
        }

        public Criteria orLine35EndIsNull() {
            orCriterion("line35_end is null");
            return (Criteria) this;
        }

        public Criteria orLine35EndIsNotNull() {
            orCriterion("line35_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine35EndEqualTo(BigDecimal value) {
            orCriterion("line35_end =", value, "line35End");
            return (Criteria) this;
        }

        public Criteria orLine35EndNotEqualTo(BigDecimal value) {
            orCriterion("line35_end <>", value, "line35End");
            return (Criteria) this;
        }

        public Criteria orLine35EndGreaterThan(BigDecimal value) {
            orCriterion("line35_end >", value, "line35End");
            return (Criteria) this;
        }

        public Criteria orLine35EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line35_end >=", value, "line35End");
            return (Criteria) this;
        }

        public Criteria orLine35EndLessThan(BigDecimal value) {
            orCriterion("line35_end <", value, "line35End");
            return (Criteria) this;
        }

        public Criteria orLine35EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line35_end <=", value, "line35End");
            return (Criteria) this;
        }

        public Criteria andLine35EndIn(List<BigDecimal> values) {
            addCriterion("line35_end in", values, "line35End");
            return (Criteria) this;
        }

        public Criteria andLine35EndNotIn(List<BigDecimal> values) {
            addCriterion("line35_end not in", values, "line35End");
            return (Criteria) this;
        }

        public Criteria andLine35EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line35_end between", value1, value2, "line35End");
            return (Criteria) this;
        }

        public Criteria andLine35EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line35_end not between", value1, value2, "line35End");
            return (Criteria) this;
        }

        public Criteria orLine35EndIn(List<BigDecimal> values) {
            orCriterion("line35_end in", values, "line35End");
            return (Criteria) this;
        }

        public Criteria orLine35EndNotIn(List<BigDecimal> values) {
            orCriterion("line35_end not in", values, "line35End");
            return (Criteria) this;
        }

        public Criteria orLine35EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line35_end between", value1, value2, "line35End");
            return (Criteria) this;
        }

        public Criteria orLine35EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line35_end not between", value1, value2, "line35End");
            return (Criteria) this;
        }

        public Criteria andLine36StartIsNull() {
            addCriterion("line36_start is null");
            return (Criteria) this;
        }

        public Criteria andLine36StartIsNotNull() {
            addCriterion("line36_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine36StartEqualTo(BigDecimal value) {
            addCriterion("line36_start =", value, "line36Start");
            return (Criteria) this;
        }

        public Criteria andLine36StartNotEqualTo(BigDecimal value) {
            addCriterion("line36_start <>", value, "line36Start");
            return (Criteria) this;
        }

        public Criteria andLine36StartGreaterThan(BigDecimal value) {
            addCriterion("line36_start >", value, "line36Start");
            return (Criteria) this;
        }

        public Criteria andLine36StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line36_start >=", value, "line36Start");
            return (Criteria) this;
        }

        public Criteria andLine36StartLessThan(BigDecimal value) {
            addCriterion("line36_start <", value, "line36Start");
            return (Criteria) this;
        }

        public Criteria andLine36StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line36_start <=", value, "line36Start");
            return (Criteria) this;
        }

        public Criteria orLine36StartIsNull() {
            orCriterion("line36_start is null");
            return (Criteria) this;
        }

        public Criteria orLine36StartIsNotNull() {
            orCriterion("line36_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine36StartEqualTo(BigDecimal value) {
            orCriterion("line36_start =", value, "line36Start");
            return (Criteria) this;
        }

        public Criteria orLine36StartNotEqualTo(BigDecimal value) {
            orCriterion("line36_start <>", value, "line36Start");
            return (Criteria) this;
        }

        public Criteria orLine36StartGreaterThan(BigDecimal value) {
            orCriterion("line36_start >", value, "line36Start");
            return (Criteria) this;
        }

        public Criteria orLine36StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line36_start >=", value, "line36Start");
            return (Criteria) this;
        }

        public Criteria orLine36StartLessThan(BigDecimal value) {
            orCriterion("line36_start <", value, "line36Start");
            return (Criteria) this;
        }

        public Criteria orLine36StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line36_start <=", value, "line36Start");
            return (Criteria) this;
        }

        public Criteria andLine36StartIn(List<BigDecimal> values) {
            addCriterion("line36_start in", values, "line36Start");
            return (Criteria) this;
        }

        public Criteria andLine36StartNotIn(List<BigDecimal> values) {
            addCriterion("line36_start not in", values, "line36Start");
            return (Criteria) this;
        }

        public Criteria andLine36StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line36_start between", value1, value2, "line36Start");
            return (Criteria) this;
        }

        public Criteria andLine36StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line36_start not between", value1, value2, "line36Start");
            return (Criteria) this;
        }

        public Criteria orLine36StartIn(List<BigDecimal> values) {
            orCriterion("line36_start in", values, "line36Start");
            return (Criteria) this;
        }

        public Criteria orLine36StartNotIn(List<BigDecimal> values) {
            orCriterion("line36_start not in", values, "line36Start");
            return (Criteria) this;
        }

        public Criteria orLine36StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line36_start between", value1, value2, "line36Start");
            return (Criteria) this;
        }

        public Criteria orLine36StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line36_start not between", value1, value2, "line36Start");
            return (Criteria) this;
        }

        public Criteria andLine36EndIsNull() {
            addCriterion("line36_end is null");
            return (Criteria) this;
        }

        public Criteria andLine36EndIsNotNull() {
            addCriterion("line36_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine36EndEqualTo(BigDecimal value) {
            addCriterion("line36_end =", value, "line36End");
            return (Criteria) this;
        }

        public Criteria andLine36EndNotEqualTo(BigDecimal value) {
            addCriterion("line36_end <>", value, "line36End");
            return (Criteria) this;
        }

        public Criteria andLine36EndGreaterThan(BigDecimal value) {
            addCriterion("line36_end >", value, "line36End");
            return (Criteria) this;
        }

        public Criteria andLine36EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line36_end >=", value, "line36End");
            return (Criteria) this;
        }

        public Criteria andLine36EndLessThan(BigDecimal value) {
            addCriterion("line36_end <", value, "line36End");
            return (Criteria) this;
        }

        public Criteria andLine36EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line36_end <=", value, "line36End");
            return (Criteria) this;
        }

        public Criteria orLine36EndIsNull() {
            orCriterion("line36_end is null");
            return (Criteria) this;
        }

        public Criteria orLine36EndIsNotNull() {
            orCriterion("line36_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine36EndEqualTo(BigDecimal value) {
            orCriterion("line36_end =", value, "line36End");
            return (Criteria) this;
        }

        public Criteria orLine36EndNotEqualTo(BigDecimal value) {
            orCriterion("line36_end <>", value, "line36End");
            return (Criteria) this;
        }

        public Criteria orLine36EndGreaterThan(BigDecimal value) {
            orCriterion("line36_end >", value, "line36End");
            return (Criteria) this;
        }

        public Criteria orLine36EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line36_end >=", value, "line36End");
            return (Criteria) this;
        }

        public Criteria orLine36EndLessThan(BigDecimal value) {
            orCriterion("line36_end <", value, "line36End");
            return (Criteria) this;
        }

        public Criteria orLine36EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line36_end <=", value, "line36End");
            return (Criteria) this;
        }

        public Criteria andLine36EndIn(List<BigDecimal> values) {
            addCriterion("line36_end in", values, "line36End");
            return (Criteria) this;
        }

        public Criteria andLine36EndNotIn(List<BigDecimal> values) {
            addCriterion("line36_end not in", values, "line36End");
            return (Criteria) this;
        }

        public Criteria andLine36EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line36_end between", value1, value2, "line36End");
            return (Criteria) this;
        }

        public Criteria andLine36EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line36_end not between", value1, value2, "line36End");
            return (Criteria) this;
        }

        public Criteria orLine36EndIn(List<BigDecimal> values) {
            orCriterion("line36_end in", values, "line36End");
            return (Criteria) this;
        }

        public Criteria orLine36EndNotIn(List<BigDecimal> values) {
            orCriterion("line36_end not in", values, "line36End");
            return (Criteria) this;
        }

        public Criteria orLine36EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line36_end between", value1, value2, "line36End");
            return (Criteria) this;
        }

        public Criteria orLine36EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line36_end not between", value1, value2, "line36End");
            return (Criteria) this;
        }

        public Criteria andLine37StartIsNull() {
            addCriterion("line37_start is null");
            return (Criteria) this;
        }

        public Criteria andLine37StartIsNotNull() {
            addCriterion("line37_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine37StartEqualTo(BigDecimal value) {
            addCriterion("line37_start =", value, "line37Start");
            return (Criteria) this;
        }

        public Criteria andLine37StartNotEqualTo(BigDecimal value) {
            addCriterion("line37_start <>", value, "line37Start");
            return (Criteria) this;
        }

        public Criteria andLine37StartGreaterThan(BigDecimal value) {
            addCriterion("line37_start >", value, "line37Start");
            return (Criteria) this;
        }

        public Criteria andLine37StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line37_start >=", value, "line37Start");
            return (Criteria) this;
        }

        public Criteria andLine37StartLessThan(BigDecimal value) {
            addCriterion("line37_start <", value, "line37Start");
            return (Criteria) this;
        }

        public Criteria andLine37StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line37_start <=", value, "line37Start");
            return (Criteria) this;
        }

        public Criteria orLine37StartIsNull() {
            orCriterion("line37_start is null");
            return (Criteria) this;
        }

        public Criteria orLine37StartIsNotNull() {
            orCriterion("line37_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine37StartEqualTo(BigDecimal value) {
            orCriterion("line37_start =", value, "line37Start");
            return (Criteria) this;
        }

        public Criteria orLine37StartNotEqualTo(BigDecimal value) {
            orCriterion("line37_start <>", value, "line37Start");
            return (Criteria) this;
        }

        public Criteria orLine37StartGreaterThan(BigDecimal value) {
            orCriterion("line37_start >", value, "line37Start");
            return (Criteria) this;
        }

        public Criteria orLine37StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line37_start >=", value, "line37Start");
            return (Criteria) this;
        }

        public Criteria orLine37StartLessThan(BigDecimal value) {
            orCriterion("line37_start <", value, "line37Start");
            return (Criteria) this;
        }

        public Criteria orLine37StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line37_start <=", value, "line37Start");
            return (Criteria) this;
        }

        public Criteria andLine37StartIn(List<BigDecimal> values) {
            addCriterion("line37_start in", values, "line37Start");
            return (Criteria) this;
        }

        public Criteria andLine37StartNotIn(List<BigDecimal> values) {
            addCriterion("line37_start not in", values, "line37Start");
            return (Criteria) this;
        }

        public Criteria andLine37StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line37_start between", value1, value2, "line37Start");
            return (Criteria) this;
        }

        public Criteria andLine37StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line37_start not between", value1, value2, "line37Start");
            return (Criteria) this;
        }

        public Criteria orLine37StartIn(List<BigDecimal> values) {
            orCriterion("line37_start in", values, "line37Start");
            return (Criteria) this;
        }

        public Criteria orLine37StartNotIn(List<BigDecimal> values) {
            orCriterion("line37_start not in", values, "line37Start");
            return (Criteria) this;
        }

        public Criteria orLine37StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line37_start between", value1, value2, "line37Start");
            return (Criteria) this;
        }

        public Criteria orLine37StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line37_start not between", value1, value2, "line37Start");
            return (Criteria) this;
        }

        public Criteria andLine37EndIsNull() {
            addCriterion("line37_end is null");
            return (Criteria) this;
        }

        public Criteria andLine37EndIsNotNull() {
            addCriterion("line37_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine37EndEqualTo(BigDecimal value) {
            addCriterion("line37_end =", value, "line37End");
            return (Criteria) this;
        }

        public Criteria andLine37EndNotEqualTo(BigDecimal value) {
            addCriterion("line37_end <>", value, "line37End");
            return (Criteria) this;
        }

        public Criteria andLine37EndGreaterThan(BigDecimal value) {
            addCriterion("line37_end >", value, "line37End");
            return (Criteria) this;
        }

        public Criteria andLine37EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line37_end >=", value, "line37End");
            return (Criteria) this;
        }

        public Criteria andLine37EndLessThan(BigDecimal value) {
            addCriterion("line37_end <", value, "line37End");
            return (Criteria) this;
        }

        public Criteria andLine37EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line37_end <=", value, "line37End");
            return (Criteria) this;
        }

        public Criteria orLine37EndIsNull() {
            orCriterion("line37_end is null");
            return (Criteria) this;
        }

        public Criteria orLine37EndIsNotNull() {
            orCriterion("line37_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine37EndEqualTo(BigDecimal value) {
            orCriterion("line37_end =", value, "line37End");
            return (Criteria) this;
        }

        public Criteria orLine37EndNotEqualTo(BigDecimal value) {
            orCriterion("line37_end <>", value, "line37End");
            return (Criteria) this;
        }

        public Criteria orLine37EndGreaterThan(BigDecimal value) {
            orCriterion("line37_end >", value, "line37End");
            return (Criteria) this;
        }

        public Criteria orLine37EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line37_end >=", value, "line37End");
            return (Criteria) this;
        }

        public Criteria orLine37EndLessThan(BigDecimal value) {
            orCriterion("line37_end <", value, "line37End");
            return (Criteria) this;
        }

        public Criteria orLine37EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line37_end <=", value, "line37End");
            return (Criteria) this;
        }

        public Criteria andLine37EndIn(List<BigDecimal> values) {
            addCriterion("line37_end in", values, "line37End");
            return (Criteria) this;
        }

        public Criteria andLine37EndNotIn(List<BigDecimal> values) {
            addCriterion("line37_end not in", values, "line37End");
            return (Criteria) this;
        }

        public Criteria andLine37EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line37_end between", value1, value2, "line37End");
            return (Criteria) this;
        }

        public Criteria andLine37EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line37_end not between", value1, value2, "line37End");
            return (Criteria) this;
        }

        public Criteria orLine37EndIn(List<BigDecimal> values) {
            orCriterion("line37_end in", values, "line37End");
            return (Criteria) this;
        }

        public Criteria orLine37EndNotIn(List<BigDecimal> values) {
            orCriterion("line37_end not in", values, "line37End");
            return (Criteria) this;
        }

        public Criteria orLine37EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line37_end between", value1, value2, "line37End");
            return (Criteria) this;
        }

        public Criteria orLine37EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line37_end not between", value1, value2, "line37End");
            return (Criteria) this;
        }

        public Criteria andLine38StartIsNull() {
            addCriterion("line38_start is null");
            return (Criteria) this;
        }

        public Criteria andLine38StartIsNotNull() {
            addCriterion("line38_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine38StartEqualTo(BigDecimal value) {
            addCriterion("line38_start =", value, "line38Start");
            return (Criteria) this;
        }

        public Criteria andLine38StartNotEqualTo(BigDecimal value) {
            addCriterion("line38_start <>", value, "line38Start");
            return (Criteria) this;
        }

        public Criteria andLine38StartGreaterThan(BigDecimal value) {
            addCriterion("line38_start >", value, "line38Start");
            return (Criteria) this;
        }

        public Criteria andLine38StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line38_start >=", value, "line38Start");
            return (Criteria) this;
        }

        public Criteria andLine38StartLessThan(BigDecimal value) {
            addCriterion("line38_start <", value, "line38Start");
            return (Criteria) this;
        }

        public Criteria andLine38StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line38_start <=", value, "line38Start");
            return (Criteria) this;
        }

        public Criteria orLine38StartIsNull() {
            orCriterion("line38_start is null");
            return (Criteria) this;
        }

        public Criteria orLine38StartIsNotNull() {
            orCriterion("line38_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine38StartEqualTo(BigDecimal value) {
            orCriterion("line38_start =", value, "line38Start");
            return (Criteria) this;
        }

        public Criteria orLine38StartNotEqualTo(BigDecimal value) {
            orCriterion("line38_start <>", value, "line38Start");
            return (Criteria) this;
        }

        public Criteria orLine38StartGreaterThan(BigDecimal value) {
            orCriterion("line38_start >", value, "line38Start");
            return (Criteria) this;
        }

        public Criteria orLine38StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line38_start >=", value, "line38Start");
            return (Criteria) this;
        }

        public Criteria orLine38StartLessThan(BigDecimal value) {
            orCriterion("line38_start <", value, "line38Start");
            return (Criteria) this;
        }

        public Criteria orLine38StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line38_start <=", value, "line38Start");
            return (Criteria) this;
        }

        public Criteria andLine38StartIn(List<BigDecimal> values) {
            addCriterion("line38_start in", values, "line38Start");
            return (Criteria) this;
        }

        public Criteria andLine38StartNotIn(List<BigDecimal> values) {
            addCriterion("line38_start not in", values, "line38Start");
            return (Criteria) this;
        }

        public Criteria andLine38StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line38_start between", value1, value2, "line38Start");
            return (Criteria) this;
        }

        public Criteria andLine38StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line38_start not between", value1, value2, "line38Start");
            return (Criteria) this;
        }

        public Criteria orLine38StartIn(List<BigDecimal> values) {
            orCriterion("line38_start in", values, "line38Start");
            return (Criteria) this;
        }

        public Criteria orLine38StartNotIn(List<BigDecimal> values) {
            orCriterion("line38_start not in", values, "line38Start");
            return (Criteria) this;
        }

        public Criteria orLine38StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line38_start between", value1, value2, "line38Start");
            return (Criteria) this;
        }

        public Criteria orLine38StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line38_start not between", value1, value2, "line38Start");
            return (Criteria) this;
        }

        public Criteria andLine38EndIsNull() {
            addCriterion("line38_end is null");
            return (Criteria) this;
        }

        public Criteria andLine38EndIsNotNull() {
            addCriterion("line38_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine38EndEqualTo(BigDecimal value) {
            addCriterion("line38_end =", value, "line38End");
            return (Criteria) this;
        }

        public Criteria andLine38EndNotEqualTo(BigDecimal value) {
            addCriterion("line38_end <>", value, "line38End");
            return (Criteria) this;
        }

        public Criteria andLine38EndGreaterThan(BigDecimal value) {
            addCriterion("line38_end >", value, "line38End");
            return (Criteria) this;
        }

        public Criteria andLine38EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line38_end >=", value, "line38End");
            return (Criteria) this;
        }

        public Criteria andLine38EndLessThan(BigDecimal value) {
            addCriterion("line38_end <", value, "line38End");
            return (Criteria) this;
        }

        public Criteria andLine38EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line38_end <=", value, "line38End");
            return (Criteria) this;
        }

        public Criteria orLine38EndIsNull() {
            orCriterion("line38_end is null");
            return (Criteria) this;
        }

        public Criteria orLine38EndIsNotNull() {
            orCriterion("line38_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine38EndEqualTo(BigDecimal value) {
            orCriterion("line38_end =", value, "line38End");
            return (Criteria) this;
        }

        public Criteria orLine38EndNotEqualTo(BigDecimal value) {
            orCriterion("line38_end <>", value, "line38End");
            return (Criteria) this;
        }

        public Criteria orLine38EndGreaterThan(BigDecimal value) {
            orCriterion("line38_end >", value, "line38End");
            return (Criteria) this;
        }

        public Criteria orLine38EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line38_end >=", value, "line38End");
            return (Criteria) this;
        }

        public Criteria orLine38EndLessThan(BigDecimal value) {
            orCriterion("line38_end <", value, "line38End");
            return (Criteria) this;
        }

        public Criteria orLine38EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line38_end <=", value, "line38End");
            return (Criteria) this;
        }

        public Criteria andLine38EndIn(List<BigDecimal> values) {
            addCriterion("line38_end in", values, "line38End");
            return (Criteria) this;
        }

        public Criteria andLine38EndNotIn(List<BigDecimal> values) {
            addCriterion("line38_end not in", values, "line38End");
            return (Criteria) this;
        }

        public Criteria andLine38EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line38_end between", value1, value2, "line38End");
            return (Criteria) this;
        }

        public Criteria andLine38EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line38_end not between", value1, value2, "line38End");
            return (Criteria) this;
        }

        public Criteria orLine38EndIn(List<BigDecimal> values) {
            orCriterion("line38_end in", values, "line38End");
            return (Criteria) this;
        }

        public Criteria orLine38EndNotIn(List<BigDecimal> values) {
            orCriterion("line38_end not in", values, "line38End");
            return (Criteria) this;
        }

        public Criteria orLine38EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line38_end between", value1, value2, "line38End");
            return (Criteria) this;
        }

        public Criteria orLine38EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line38_end not between", value1, value2, "line38End");
            return (Criteria) this;
        }

        public Criteria andLine39StartIsNull() {
            addCriterion("line39_start is null");
            return (Criteria) this;
        }

        public Criteria andLine39StartIsNotNull() {
            addCriterion("line39_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine39StartEqualTo(BigDecimal value) {
            addCriterion("line39_start =", value, "line39Start");
            return (Criteria) this;
        }

        public Criteria andLine39StartNotEqualTo(BigDecimal value) {
            addCriterion("line39_start <>", value, "line39Start");
            return (Criteria) this;
        }

        public Criteria andLine39StartGreaterThan(BigDecimal value) {
            addCriterion("line39_start >", value, "line39Start");
            return (Criteria) this;
        }

        public Criteria andLine39StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line39_start >=", value, "line39Start");
            return (Criteria) this;
        }

        public Criteria andLine39StartLessThan(BigDecimal value) {
            addCriterion("line39_start <", value, "line39Start");
            return (Criteria) this;
        }

        public Criteria andLine39StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line39_start <=", value, "line39Start");
            return (Criteria) this;
        }

        public Criteria orLine39StartIsNull() {
            orCriterion("line39_start is null");
            return (Criteria) this;
        }

        public Criteria orLine39StartIsNotNull() {
            orCriterion("line39_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine39StartEqualTo(BigDecimal value) {
            orCriterion("line39_start =", value, "line39Start");
            return (Criteria) this;
        }

        public Criteria orLine39StartNotEqualTo(BigDecimal value) {
            orCriterion("line39_start <>", value, "line39Start");
            return (Criteria) this;
        }

        public Criteria orLine39StartGreaterThan(BigDecimal value) {
            orCriterion("line39_start >", value, "line39Start");
            return (Criteria) this;
        }

        public Criteria orLine39StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line39_start >=", value, "line39Start");
            return (Criteria) this;
        }

        public Criteria orLine39StartLessThan(BigDecimal value) {
            orCriterion("line39_start <", value, "line39Start");
            return (Criteria) this;
        }

        public Criteria orLine39StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line39_start <=", value, "line39Start");
            return (Criteria) this;
        }

        public Criteria andLine39StartIn(List<BigDecimal> values) {
            addCriterion("line39_start in", values, "line39Start");
            return (Criteria) this;
        }

        public Criteria andLine39StartNotIn(List<BigDecimal> values) {
            addCriterion("line39_start not in", values, "line39Start");
            return (Criteria) this;
        }

        public Criteria andLine39StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line39_start between", value1, value2, "line39Start");
            return (Criteria) this;
        }

        public Criteria andLine39StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line39_start not between", value1, value2, "line39Start");
            return (Criteria) this;
        }

        public Criteria orLine39StartIn(List<BigDecimal> values) {
            orCriterion("line39_start in", values, "line39Start");
            return (Criteria) this;
        }

        public Criteria orLine39StartNotIn(List<BigDecimal> values) {
            orCriterion("line39_start not in", values, "line39Start");
            return (Criteria) this;
        }

        public Criteria orLine39StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line39_start between", value1, value2, "line39Start");
            return (Criteria) this;
        }

        public Criteria orLine39StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line39_start not between", value1, value2, "line39Start");
            return (Criteria) this;
        }

        public Criteria andLine39EndIsNull() {
            addCriterion("line39_end is null");
            return (Criteria) this;
        }

        public Criteria andLine39EndIsNotNull() {
            addCriterion("line39_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine39EndEqualTo(BigDecimal value) {
            addCriterion("line39_end =", value, "line39End");
            return (Criteria) this;
        }

        public Criteria andLine39EndNotEqualTo(BigDecimal value) {
            addCriterion("line39_end <>", value, "line39End");
            return (Criteria) this;
        }

        public Criteria andLine39EndGreaterThan(BigDecimal value) {
            addCriterion("line39_end >", value, "line39End");
            return (Criteria) this;
        }

        public Criteria andLine39EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line39_end >=", value, "line39End");
            return (Criteria) this;
        }

        public Criteria andLine39EndLessThan(BigDecimal value) {
            addCriterion("line39_end <", value, "line39End");
            return (Criteria) this;
        }

        public Criteria andLine39EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line39_end <=", value, "line39End");
            return (Criteria) this;
        }

        public Criteria orLine39EndIsNull() {
            orCriterion("line39_end is null");
            return (Criteria) this;
        }

        public Criteria orLine39EndIsNotNull() {
            orCriterion("line39_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine39EndEqualTo(BigDecimal value) {
            orCriterion("line39_end =", value, "line39End");
            return (Criteria) this;
        }

        public Criteria orLine39EndNotEqualTo(BigDecimal value) {
            orCriterion("line39_end <>", value, "line39End");
            return (Criteria) this;
        }

        public Criteria orLine39EndGreaterThan(BigDecimal value) {
            orCriterion("line39_end >", value, "line39End");
            return (Criteria) this;
        }

        public Criteria orLine39EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line39_end >=", value, "line39End");
            return (Criteria) this;
        }

        public Criteria orLine39EndLessThan(BigDecimal value) {
            orCriterion("line39_end <", value, "line39End");
            return (Criteria) this;
        }

        public Criteria orLine39EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line39_end <=", value, "line39End");
            return (Criteria) this;
        }

        public Criteria andLine39EndIn(List<BigDecimal> values) {
            addCriterion("line39_end in", values, "line39End");
            return (Criteria) this;
        }

        public Criteria andLine39EndNotIn(List<BigDecimal> values) {
            addCriterion("line39_end not in", values, "line39End");
            return (Criteria) this;
        }

        public Criteria andLine39EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line39_end between", value1, value2, "line39End");
            return (Criteria) this;
        }

        public Criteria andLine39EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line39_end not between", value1, value2, "line39End");
            return (Criteria) this;
        }

        public Criteria orLine39EndIn(List<BigDecimal> values) {
            orCriterion("line39_end in", values, "line39End");
            return (Criteria) this;
        }

        public Criteria orLine39EndNotIn(List<BigDecimal> values) {
            orCriterion("line39_end not in", values, "line39End");
            return (Criteria) this;
        }

        public Criteria orLine39EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line39_end between", value1, value2, "line39End");
            return (Criteria) this;
        }

        public Criteria orLine39EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line39_end not between", value1, value2, "line39End");
            return (Criteria) this;
        }

        public Criteria andLine40StartIsNull() {
            addCriterion("line40_start is null");
            return (Criteria) this;
        }

        public Criteria andLine40StartIsNotNull() {
            addCriterion("line40_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine40StartEqualTo(BigDecimal value) {
            addCriterion("line40_start =", value, "line40Start");
            return (Criteria) this;
        }

        public Criteria andLine40StartNotEqualTo(BigDecimal value) {
            addCriterion("line40_start <>", value, "line40Start");
            return (Criteria) this;
        }

        public Criteria andLine40StartGreaterThan(BigDecimal value) {
            addCriterion("line40_start >", value, "line40Start");
            return (Criteria) this;
        }

        public Criteria andLine40StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line40_start >=", value, "line40Start");
            return (Criteria) this;
        }

        public Criteria andLine40StartLessThan(BigDecimal value) {
            addCriterion("line40_start <", value, "line40Start");
            return (Criteria) this;
        }

        public Criteria andLine40StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line40_start <=", value, "line40Start");
            return (Criteria) this;
        }

        public Criteria orLine40StartIsNull() {
            orCriterion("line40_start is null");
            return (Criteria) this;
        }

        public Criteria orLine40StartIsNotNull() {
            orCriterion("line40_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine40StartEqualTo(BigDecimal value) {
            orCriterion("line40_start =", value, "line40Start");
            return (Criteria) this;
        }

        public Criteria orLine40StartNotEqualTo(BigDecimal value) {
            orCriterion("line40_start <>", value, "line40Start");
            return (Criteria) this;
        }

        public Criteria orLine40StartGreaterThan(BigDecimal value) {
            orCriterion("line40_start >", value, "line40Start");
            return (Criteria) this;
        }

        public Criteria orLine40StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line40_start >=", value, "line40Start");
            return (Criteria) this;
        }

        public Criteria orLine40StartLessThan(BigDecimal value) {
            orCriterion("line40_start <", value, "line40Start");
            return (Criteria) this;
        }

        public Criteria orLine40StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line40_start <=", value, "line40Start");
            return (Criteria) this;
        }

        public Criteria andLine40StartIn(List<BigDecimal> values) {
            addCriterion("line40_start in", values, "line40Start");
            return (Criteria) this;
        }

        public Criteria andLine40StartNotIn(List<BigDecimal> values) {
            addCriterion("line40_start not in", values, "line40Start");
            return (Criteria) this;
        }

        public Criteria andLine40StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line40_start between", value1, value2, "line40Start");
            return (Criteria) this;
        }

        public Criteria andLine40StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line40_start not between", value1, value2, "line40Start");
            return (Criteria) this;
        }

        public Criteria orLine40StartIn(List<BigDecimal> values) {
            orCriterion("line40_start in", values, "line40Start");
            return (Criteria) this;
        }

        public Criteria orLine40StartNotIn(List<BigDecimal> values) {
            orCriterion("line40_start not in", values, "line40Start");
            return (Criteria) this;
        }

        public Criteria orLine40StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line40_start between", value1, value2, "line40Start");
            return (Criteria) this;
        }

        public Criteria orLine40StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line40_start not between", value1, value2, "line40Start");
            return (Criteria) this;
        }

        public Criteria andLine40EndIsNull() {
            addCriterion("line40_end is null");
            return (Criteria) this;
        }

        public Criteria andLine40EndIsNotNull() {
            addCriterion("line40_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine40EndEqualTo(BigDecimal value) {
            addCriterion("line40_end =", value, "line40End");
            return (Criteria) this;
        }

        public Criteria andLine40EndNotEqualTo(BigDecimal value) {
            addCriterion("line40_end <>", value, "line40End");
            return (Criteria) this;
        }

        public Criteria andLine40EndGreaterThan(BigDecimal value) {
            addCriterion("line40_end >", value, "line40End");
            return (Criteria) this;
        }

        public Criteria andLine40EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line40_end >=", value, "line40End");
            return (Criteria) this;
        }

        public Criteria andLine40EndLessThan(BigDecimal value) {
            addCriterion("line40_end <", value, "line40End");
            return (Criteria) this;
        }

        public Criteria andLine40EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line40_end <=", value, "line40End");
            return (Criteria) this;
        }

        public Criteria orLine40EndIsNull() {
            orCriterion("line40_end is null");
            return (Criteria) this;
        }

        public Criteria orLine40EndIsNotNull() {
            orCriterion("line40_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine40EndEqualTo(BigDecimal value) {
            orCriterion("line40_end =", value, "line40End");
            return (Criteria) this;
        }

        public Criteria orLine40EndNotEqualTo(BigDecimal value) {
            orCriterion("line40_end <>", value, "line40End");
            return (Criteria) this;
        }

        public Criteria orLine40EndGreaterThan(BigDecimal value) {
            orCriterion("line40_end >", value, "line40End");
            return (Criteria) this;
        }

        public Criteria orLine40EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line40_end >=", value, "line40End");
            return (Criteria) this;
        }

        public Criteria orLine40EndLessThan(BigDecimal value) {
            orCriterion("line40_end <", value, "line40End");
            return (Criteria) this;
        }

        public Criteria orLine40EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line40_end <=", value, "line40End");
            return (Criteria) this;
        }

        public Criteria andLine40EndIn(List<BigDecimal> values) {
            addCriterion("line40_end in", values, "line40End");
            return (Criteria) this;
        }

        public Criteria andLine40EndNotIn(List<BigDecimal> values) {
            addCriterion("line40_end not in", values, "line40End");
            return (Criteria) this;
        }

        public Criteria andLine40EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line40_end between", value1, value2, "line40End");
            return (Criteria) this;
        }

        public Criteria andLine40EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line40_end not between", value1, value2, "line40End");
            return (Criteria) this;
        }

        public Criteria orLine40EndIn(List<BigDecimal> values) {
            orCriterion("line40_end in", values, "line40End");
            return (Criteria) this;
        }

        public Criteria orLine40EndNotIn(List<BigDecimal> values) {
            orCriterion("line40_end not in", values, "line40End");
            return (Criteria) this;
        }

        public Criteria orLine40EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line40_end between", value1, value2, "line40End");
            return (Criteria) this;
        }

        public Criteria orLine40EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line40_end not between", value1, value2, "line40End");
            return (Criteria) this;
        }

        public Criteria andLine41StartIsNull() {
            addCriterion("line41_start is null");
            return (Criteria) this;
        }

        public Criteria andLine41StartIsNotNull() {
            addCriterion("line41_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine41StartEqualTo(BigDecimal value) {
            addCriterion("line41_start =", value, "line41Start");
            return (Criteria) this;
        }

        public Criteria andLine41StartNotEqualTo(BigDecimal value) {
            addCriterion("line41_start <>", value, "line41Start");
            return (Criteria) this;
        }

        public Criteria andLine41StartGreaterThan(BigDecimal value) {
            addCriterion("line41_start >", value, "line41Start");
            return (Criteria) this;
        }

        public Criteria andLine41StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line41_start >=", value, "line41Start");
            return (Criteria) this;
        }

        public Criteria andLine41StartLessThan(BigDecimal value) {
            addCriterion("line41_start <", value, "line41Start");
            return (Criteria) this;
        }

        public Criteria andLine41StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line41_start <=", value, "line41Start");
            return (Criteria) this;
        }

        public Criteria orLine41StartIsNull() {
            orCriterion("line41_start is null");
            return (Criteria) this;
        }

        public Criteria orLine41StartIsNotNull() {
            orCriterion("line41_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine41StartEqualTo(BigDecimal value) {
            orCriterion("line41_start =", value, "line41Start");
            return (Criteria) this;
        }

        public Criteria orLine41StartNotEqualTo(BigDecimal value) {
            orCriterion("line41_start <>", value, "line41Start");
            return (Criteria) this;
        }

        public Criteria orLine41StartGreaterThan(BigDecimal value) {
            orCriterion("line41_start >", value, "line41Start");
            return (Criteria) this;
        }

        public Criteria orLine41StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line41_start >=", value, "line41Start");
            return (Criteria) this;
        }

        public Criteria orLine41StartLessThan(BigDecimal value) {
            orCriterion("line41_start <", value, "line41Start");
            return (Criteria) this;
        }

        public Criteria orLine41StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line41_start <=", value, "line41Start");
            return (Criteria) this;
        }

        public Criteria andLine41StartIn(List<BigDecimal> values) {
            addCriterion("line41_start in", values, "line41Start");
            return (Criteria) this;
        }

        public Criteria andLine41StartNotIn(List<BigDecimal> values) {
            addCriterion("line41_start not in", values, "line41Start");
            return (Criteria) this;
        }

        public Criteria andLine41StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line41_start between", value1, value2, "line41Start");
            return (Criteria) this;
        }

        public Criteria andLine41StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line41_start not between", value1, value2, "line41Start");
            return (Criteria) this;
        }

        public Criteria orLine41StartIn(List<BigDecimal> values) {
            orCriterion("line41_start in", values, "line41Start");
            return (Criteria) this;
        }

        public Criteria orLine41StartNotIn(List<BigDecimal> values) {
            orCriterion("line41_start not in", values, "line41Start");
            return (Criteria) this;
        }

        public Criteria orLine41StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line41_start between", value1, value2, "line41Start");
            return (Criteria) this;
        }

        public Criteria orLine41StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line41_start not between", value1, value2, "line41Start");
            return (Criteria) this;
        }

        public Criteria andLine41EndIsNull() {
            addCriterion("line41_end is null");
            return (Criteria) this;
        }

        public Criteria andLine41EndIsNotNull() {
            addCriterion("line41_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine41EndEqualTo(BigDecimal value) {
            addCriterion("line41_end =", value, "line41End");
            return (Criteria) this;
        }

        public Criteria andLine41EndNotEqualTo(BigDecimal value) {
            addCriterion("line41_end <>", value, "line41End");
            return (Criteria) this;
        }

        public Criteria andLine41EndGreaterThan(BigDecimal value) {
            addCriterion("line41_end >", value, "line41End");
            return (Criteria) this;
        }

        public Criteria andLine41EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line41_end >=", value, "line41End");
            return (Criteria) this;
        }

        public Criteria andLine41EndLessThan(BigDecimal value) {
            addCriterion("line41_end <", value, "line41End");
            return (Criteria) this;
        }

        public Criteria andLine41EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line41_end <=", value, "line41End");
            return (Criteria) this;
        }

        public Criteria orLine41EndIsNull() {
            orCriterion("line41_end is null");
            return (Criteria) this;
        }

        public Criteria orLine41EndIsNotNull() {
            orCriterion("line41_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine41EndEqualTo(BigDecimal value) {
            orCriterion("line41_end =", value, "line41End");
            return (Criteria) this;
        }

        public Criteria orLine41EndNotEqualTo(BigDecimal value) {
            orCriterion("line41_end <>", value, "line41End");
            return (Criteria) this;
        }

        public Criteria orLine41EndGreaterThan(BigDecimal value) {
            orCriterion("line41_end >", value, "line41End");
            return (Criteria) this;
        }

        public Criteria orLine41EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line41_end >=", value, "line41End");
            return (Criteria) this;
        }

        public Criteria orLine41EndLessThan(BigDecimal value) {
            orCriterion("line41_end <", value, "line41End");
            return (Criteria) this;
        }

        public Criteria orLine41EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line41_end <=", value, "line41End");
            return (Criteria) this;
        }

        public Criteria andLine41EndIn(List<BigDecimal> values) {
            addCriterion("line41_end in", values, "line41End");
            return (Criteria) this;
        }

        public Criteria andLine41EndNotIn(List<BigDecimal> values) {
            addCriterion("line41_end not in", values, "line41End");
            return (Criteria) this;
        }

        public Criteria andLine41EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line41_end between", value1, value2, "line41End");
            return (Criteria) this;
        }

        public Criteria andLine41EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line41_end not between", value1, value2, "line41End");
            return (Criteria) this;
        }

        public Criteria orLine41EndIn(List<BigDecimal> values) {
            orCriterion("line41_end in", values, "line41End");
            return (Criteria) this;
        }

        public Criteria orLine41EndNotIn(List<BigDecimal> values) {
            orCriterion("line41_end not in", values, "line41End");
            return (Criteria) this;
        }

        public Criteria orLine41EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line41_end between", value1, value2, "line41End");
            return (Criteria) this;
        }

        public Criteria orLine41EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line41_end not between", value1, value2, "line41End");
            return (Criteria) this;
        }

        public Criteria andLine42StartIsNull() {
            addCriterion("line42_start is null");
            return (Criteria) this;
        }

        public Criteria andLine42StartIsNotNull() {
            addCriterion("line42_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine42StartEqualTo(BigDecimal value) {
            addCriterion("line42_start =", value, "line42Start");
            return (Criteria) this;
        }

        public Criteria andLine42StartNotEqualTo(BigDecimal value) {
            addCriterion("line42_start <>", value, "line42Start");
            return (Criteria) this;
        }

        public Criteria andLine42StartGreaterThan(BigDecimal value) {
            addCriterion("line42_start >", value, "line42Start");
            return (Criteria) this;
        }

        public Criteria andLine42StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line42_start >=", value, "line42Start");
            return (Criteria) this;
        }

        public Criteria andLine42StartLessThan(BigDecimal value) {
            addCriterion("line42_start <", value, "line42Start");
            return (Criteria) this;
        }

        public Criteria andLine42StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line42_start <=", value, "line42Start");
            return (Criteria) this;
        }

        public Criteria orLine42StartIsNull() {
            orCriterion("line42_start is null");
            return (Criteria) this;
        }

        public Criteria orLine42StartIsNotNull() {
            orCriterion("line42_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine42StartEqualTo(BigDecimal value) {
            orCriterion("line42_start =", value, "line42Start");
            return (Criteria) this;
        }

        public Criteria orLine42StartNotEqualTo(BigDecimal value) {
            orCriterion("line42_start <>", value, "line42Start");
            return (Criteria) this;
        }

        public Criteria orLine42StartGreaterThan(BigDecimal value) {
            orCriterion("line42_start >", value, "line42Start");
            return (Criteria) this;
        }

        public Criteria orLine42StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line42_start >=", value, "line42Start");
            return (Criteria) this;
        }

        public Criteria orLine42StartLessThan(BigDecimal value) {
            orCriterion("line42_start <", value, "line42Start");
            return (Criteria) this;
        }

        public Criteria orLine42StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line42_start <=", value, "line42Start");
            return (Criteria) this;
        }

        public Criteria andLine42StartIn(List<BigDecimal> values) {
            addCriterion("line42_start in", values, "line42Start");
            return (Criteria) this;
        }

        public Criteria andLine42StartNotIn(List<BigDecimal> values) {
            addCriterion("line42_start not in", values, "line42Start");
            return (Criteria) this;
        }

        public Criteria andLine42StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line42_start between", value1, value2, "line42Start");
            return (Criteria) this;
        }

        public Criteria andLine42StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line42_start not between", value1, value2, "line42Start");
            return (Criteria) this;
        }

        public Criteria orLine42StartIn(List<BigDecimal> values) {
            orCriterion("line42_start in", values, "line42Start");
            return (Criteria) this;
        }

        public Criteria orLine42StartNotIn(List<BigDecimal> values) {
            orCriterion("line42_start not in", values, "line42Start");
            return (Criteria) this;
        }

        public Criteria orLine42StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line42_start between", value1, value2, "line42Start");
            return (Criteria) this;
        }

        public Criteria orLine42StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line42_start not between", value1, value2, "line42Start");
            return (Criteria) this;
        }

        public Criteria andLine42EndIsNull() {
            addCriterion("line42_end is null");
            return (Criteria) this;
        }

        public Criteria andLine42EndIsNotNull() {
            addCriterion("line42_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine42EndEqualTo(BigDecimal value) {
            addCriterion("line42_end =", value, "line42End");
            return (Criteria) this;
        }

        public Criteria andLine42EndNotEqualTo(BigDecimal value) {
            addCriterion("line42_end <>", value, "line42End");
            return (Criteria) this;
        }

        public Criteria andLine42EndGreaterThan(BigDecimal value) {
            addCriterion("line42_end >", value, "line42End");
            return (Criteria) this;
        }

        public Criteria andLine42EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line42_end >=", value, "line42End");
            return (Criteria) this;
        }

        public Criteria andLine42EndLessThan(BigDecimal value) {
            addCriterion("line42_end <", value, "line42End");
            return (Criteria) this;
        }

        public Criteria andLine42EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line42_end <=", value, "line42End");
            return (Criteria) this;
        }

        public Criteria orLine42EndIsNull() {
            orCriterion("line42_end is null");
            return (Criteria) this;
        }

        public Criteria orLine42EndIsNotNull() {
            orCriterion("line42_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine42EndEqualTo(BigDecimal value) {
            orCriterion("line42_end =", value, "line42End");
            return (Criteria) this;
        }

        public Criteria orLine42EndNotEqualTo(BigDecimal value) {
            orCriterion("line42_end <>", value, "line42End");
            return (Criteria) this;
        }

        public Criteria orLine42EndGreaterThan(BigDecimal value) {
            orCriterion("line42_end >", value, "line42End");
            return (Criteria) this;
        }

        public Criteria orLine42EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line42_end >=", value, "line42End");
            return (Criteria) this;
        }

        public Criteria orLine42EndLessThan(BigDecimal value) {
            orCriterion("line42_end <", value, "line42End");
            return (Criteria) this;
        }

        public Criteria orLine42EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line42_end <=", value, "line42End");
            return (Criteria) this;
        }

        public Criteria andLine42EndIn(List<BigDecimal> values) {
            addCriterion("line42_end in", values, "line42End");
            return (Criteria) this;
        }

        public Criteria andLine42EndNotIn(List<BigDecimal> values) {
            addCriterion("line42_end not in", values, "line42End");
            return (Criteria) this;
        }

        public Criteria andLine42EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line42_end between", value1, value2, "line42End");
            return (Criteria) this;
        }

        public Criteria andLine42EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line42_end not between", value1, value2, "line42End");
            return (Criteria) this;
        }

        public Criteria orLine42EndIn(List<BigDecimal> values) {
            orCriterion("line42_end in", values, "line42End");
            return (Criteria) this;
        }

        public Criteria orLine42EndNotIn(List<BigDecimal> values) {
            orCriterion("line42_end not in", values, "line42End");
            return (Criteria) this;
        }

        public Criteria orLine42EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line42_end between", value1, value2, "line42End");
            return (Criteria) this;
        }

        public Criteria orLine42EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line42_end not between", value1, value2, "line42End");
            return (Criteria) this;
        }

        public Criteria andLine43StartIsNull() {
            addCriterion("line43_start is null");
            return (Criteria) this;
        }

        public Criteria andLine43StartIsNotNull() {
            addCriterion("line43_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine43StartEqualTo(BigDecimal value) {
            addCriterion("line43_start =", value, "line43Start");
            return (Criteria) this;
        }

        public Criteria andLine43StartNotEqualTo(BigDecimal value) {
            addCriterion("line43_start <>", value, "line43Start");
            return (Criteria) this;
        }

        public Criteria andLine43StartGreaterThan(BigDecimal value) {
            addCriterion("line43_start >", value, "line43Start");
            return (Criteria) this;
        }

        public Criteria andLine43StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line43_start >=", value, "line43Start");
            return (Criteria) this;
        }

        public Criteria andLine43StartLessThan(BigDecimal value) {
            addCriterion("line43_start <", value, "line43Start");
            return (Criteria) this;
        }

        public Criteria andLine43StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line43_start <=", value, "line43Start");
            return (Criteria) this;
        }

        public Criteria orLine43StartIsNull() {
            orCriterion("line43_start is null");
            return (Criteria) this;
        }

        public Criteria orLine43StartIsNotNull() {
            orCriterion("line43_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine43StartEqualTo(BigDecimal value) {
            orCriterion("line43_start =", value, "line43Start");
            return (Criteria) this;
        }

        public Criteria orLine43StartNotEqualTo(BigDecimal value) {
            orCriterion("line43_start <>", value, "line43Start");
            return (Criteria) this;
        }

        public Criteria orLine43StartGreaterThan(BigDecimal value) {
            orCriterion("line43_start >", value, "line43Start");
            return (Criteria) this;
        }

        public Criteria orLine43StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line43_start >=", value, "line43Start");
            return (Criteria) this;
        }

        public Criteria orLine43StartLessThan(BigDecimal value) {
            orCriterion("line43_start <", value, "line43Start");
            return (Criteria) this;
        }

        public Criteria orLine43StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line43_start <=", value, "line43Start");
            return (Criteria) this;
        }

        public Criteria andLine43StartIn(List<BigDecimal> values) {
            addCriterion("line43_start in", values, "line43Start");
            return (Criteria) this;
        }

        public Criteria andLine43StartNotIn(List<BigDecimal> values) {
            addCriterion("line43_start not in", values, "line43Start");
            return (Criteria) this;
        }

        public Criteria andLine43StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line43_start between", value1, value2, "line43Start");
            return (Criteria) this;
        }

        public Criteria andLine43StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line43_start not between", value1, value2, "line43Start");
            return (Criteria) this;
        }

        public Criteria orLine43StartIn(List<BigDecimal> values) {
            orCriterion("line43_start in", values, "line43Start");
            return (Criteria) this;
        }

        public Criteria orLine43StartNotIn(List<BigDecimal> values) {
            orCriterion("line43_start not in", values, "line43Start");
            return (Criteria) this;
        }

        public Criteria orLine43StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line43_start between", value1, value2, "line43Start");
            return (Criteria) this;
        }

        public Criteria orLine43StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line43_start not between", value1, value2, "line43Start");
            return (Criteria) this;
        }

        public Criteria andLine43EndIsNull() {
            addCriterion("line43_end is null");
            return (Criteria) this;
        }

        public Criteria andLine43EndIsNotNull() {
            addCriterion("line43_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine43EndEqualTo(BigDecimal value) {
            addCriterion("line43_end =", value, "line43End");
            return (Criteria) this;
        }

        public Criteria andLine43EndNotEqualTo(BigDecimal value) {
            addCriterion("line43_end <>", value, "line43End");
            return (Criteria) this;
        }

        public Criteria andLine43EndGreaterThan(BigDecimal value) {
            addCriterion("line43_end >", value, "line43End");
            return (Criteria) this;
        }

        public Criteria andLine43EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line43_end >=", value, "line43End");
            return (Criteria) this;
        }

        public Criteria andLine43EndLessThan(BigDecimal value) {
            addCriterion("line43_end <", value, "line43End");
            return (Criteria) this;
        }

        public Criteria andLine43EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line43_end <=", value, "line43End");
            return (Criteria) this;
        }

        public Criteria orLine43EndIsNull() {
            orCriterion("line43_end is null");
            return (Criteria) this;
        }

        public Criteria orLine43EndIsNotNull() {
            orCriterion("line43_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine43EndEqualTo(BigDecimal value) {
            orCriterion("line43_end =", value, "line43End");
            return (Criteria) this;
        }

        public Criteria orLine43EndNotEqualTo(BigDecimal value) {
            orCriterion("line43_end <>", value, "line43End");
            return (Criteria) this;
        }

        public Criteria orLine43EndGreaterThan(BigDecimal value) {
            orCriterion("line43_end >", value, "line43End");
            return (Criteria) this;
        }

        public Criteria orLine43EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line43_end >=", value, "line43End");
            return (Criteria) this;
        }

        public Criteria orLine43EndLessThan(BigDecimal value) {
            orCriterion("line43_end <", value, "line43End");
            return (Criteria) this;
        }

        public Criteria orLine43EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line43_end <=", value, "line43End");
            return (Criteria) this;
        }

        public Criteria andLine43EndIn(List<BigDecimal> values) {
            addCriterion("line43_end in", values, "line43End");
            return (Criteria) this;
        }

        public Criteria andLine43EndNotIn(List<BigDecimal> values) {
            addCriterion("line43_end not in", values, "line43End");
            return (Criteria) this;
        }

        public Criteria andLine43EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line43_end between", value1, value2, "line43End");
            return (Criteria) this;
        }

        public Criteria andLine43EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line43_end not between", value1, value2, "line43End");
            return (Criteria) this;
        }

        public Criteria orLine43EndIn(List<BigDecimal> values) {
            orCriterion("line43_end in", values, "line43End");
            return (Criteria) this;
        }

        public Criteria orLine43EndNotIn(List<BigDecimal> values) {
            orCriterion("line43_end not in", values, "line43End");
            return (Criteria) this;
        }

        public Criteria orLine43EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line43_end between", value1, value2, "line43End");
            return (Criteria) this;
        }

        public Criteria orLine43EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line43_end not between", value1, value2, "line43End");
            return (Criteria) this;
        }

        public Criteria andLine44StartIsNull() {
            addCriterion("line44_start is null");
            return (Criteria) this;
        }

        public Criteria andLine44StartIsNotNull() {
            addCriterion("line44_start is not null");
            return (Criteria) this;
        }

        public Criteria andLine44StartEqualTo(BigDecimal value) {
            addCriterion("line44_start =", value, "line44Start");
            return (Criteria) this;
        }

        public Criteria andLine44StartNotEqualTo(BigDecimal value) {
            addCriterion("line44_start <>", value, "line44Start");
            return (Criteria) this;
        }

        public Criteria andLine44StartGreaterThan(BigDecimal value) {
            addCriterion("line44_start >", value, "line44Start");
            return (Criteria) this;
        }

        public Criteria andLine44StartGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line44_start >=", value, "line44Start");
            return (Criteria) this;
        }

        public Criteria andLine44StartLessThan(BigDecimal value) {
            addCriterion("line44_start <", value, "line44Start");
            return (Criteria) this;
        }

        public Criteria andLine44StartLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line44_start <=", value, "line44Start");
            return (Criteria) this;
        }

        public Criteria orLine44StartIsNull() {
            orCriterion("line44_start is null");
            return (Criteria) this;
        }

        public Criteria orLine44StartIsNotNull() {
            orCriterion("line44_start is not null");
            return (Criteria) this;
        }

        public Criteria orLine44StartEqualTo(BigDecimal value) {
            orCriterion("line44_start =", value, "line44Start");
            return (Criteria) this;
        }

        public Criteria orLine44StartNotEqualTo(BigDecimal value) {
            orCriterion("line44_start <>", value, "line44Start");
            return (Criteria) this;
        }

        public Criteria orLine44StartGreaterThan(BigDecimal value) {
            orCriterion("line44_start >", value, "line44Start");
            return (Criteria) this;
        }

        public Criteria orLine44StartGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line44_start >=", value, "line44Start");
            return (Criteria) this;
        }

        public Criteria orLine44StartLessThan(BigDecimal value) {
            orCriterion("line44_start <", value, "line44Start");
            return (Criteria) this;
        }

        public Criteria orLine44StartLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line44_start <=", value, "line44Start");
            return (Criteria) this;
        }

        public Criteria andLine44StartIn(List<BigDecimal> values) {
            addCriterion("line44_start in", values, "line44Start");
            return (Criteria) this;
        }

        public Criteria andLine44StartNotIn(List<BigDecimal> values) {
            addCriterion("line44_start not in", values, "line44Start");
            return (Criteria) this;
        }

        public Criteria andLine44StartBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line44_start between", value1, value2, "line44Start");
            return (Criteria) this;
        }

        public Criteria andLine44StartNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line44_start not between", value1, value2, "line44Start");
            return (Criteria) this;
        }

        public Criteria orLine44StartIn(List<BigDecimal> values) {
            orCriterion("line44_start in", values, "line44Start");
            return (Criteria) this;
        }

        public Criteria orLine44StartNotIn(List<BigDecimal> values) {
            orCriterion("line44_start not in", values, "line44Start");
            return (Criteria) this;
        }

        public Criteria orLine44StartBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line44_start between", value1, value2, "line44Start");
            return (Criteria) this;
        }

        public Criteria orLine44StartNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line44_start not between", value1, value2, "line44Start");
            return (Criteria) this;
        }

        public Criteria andLine44EndIsNull() {
            addCriterion("line44_end is null");
            return (Criteria) this;
        }

        public Criteria andLine44EndIsNotNull() {
            addCriterion("line44_end is not null");
            return (Criteria) this;
        }

        public Criteria andLine44EndEqualTo(BigDecimal value) {
            addCriterion("line44_end =", value, "line44End");
            return (Criteria) this;
        }

        public Criteria andLine44EndNotEqualTo(BigDecimal value) {
            addCriterion("line44_end <>", value, "line44End");
            return (Criteria) this;
        }

        public Criteria andLine44EndGreaterThan(BigDecimal value) {
            addCriterion("line44_end >", value, "line44End");
            return (Criteria) this;
        }

        public Criteria andLine44EndGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("line44_end >=", value, "line44End");
            return (Criteria) this;
        }

        public Criteria andLine44EndLessThan(BigDecimal value) {
            addCriterion("line44_end <", value, "line44End");
            return (Criteria) this;
        }

        public Criteria andLine44EndLessThanOrEqualTo(BigDecimal value) {
            addCriterion("line44_end <=", value, "line44End");
            return (Criteria) this;
        }

        public Criteria orLine44EndIsNull() {
            orCriterion("line44_end is null");
            return (Criteria) this;
        }

        public Criteria orLine44EndIsNotNull() {
            orCriterion("line44_end is not null");
            return (Criteria) this;
        }

        public Criteria orLine44EndEqualTo(BigDecimal value) {
            orCriterion("line44_end =", value, "line44End");
            return (Criteria) this;
        }

        public Criteria orLine44EndNotEqualTo(BigDecimal value) {
            orCriterion("line44_end <>", value, "line44End");
            return (Criteria) this;
        }

        public Criteria orLine44EndGreaterThan(BigDecimal value) {
            orCriterion("line44_end >", value, "line44End");
            return (Criteria) this;
        }

        public Criteria orLine44EndGreaterThanOrEqualTo(BigDecimal value) {
            orCriterion("line44_end >=", value, "line44End");
            return (Criteria) this;
        }

        public Criteria orLine44EndLessThan(BigDecimal value) {
            orCriterion("line44_end <", value, "line44End");
            return (Criteria) this;
        }

        public Criteria orLine44EndLessThanOrEqualTo(BigDecimal value) {
            orCriterion("line44_end <=", value, "line44End");
            return (Criteria) this;
        }

        public Criteria andLine44EndIn(List<BigDecimal> values) {
            addCriterion("line44_end in", values, "line44End");
            return (Criteria) this;
        }

        public Criteria andLine44EndNotIn(List<BigDecimal> values) {
            addCriterion("line44_end not in", values, "line44End");
            return (Criteria) this;
        }

        public Criteria andLine44EndBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line44_end between", value1, value2, "line44End");
            return (Criteria) this;
        }

        public Criteria andLine44EndNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("line44_end not between", value1, value2, "line44End");
            return (Criteria) this;
        }

        public Criteria orLine44EndIn(List<BigDecimal> values) {
            orCriterion("line44_end in", values, "line44End");
            return (Criteria) this;
        }

        public Criteria orLine44EndNotIn(List<BigDecimal> values) {
            orCriterion("line44_end not in", values, "line44End");
            return (Criteria) this;
        }

        public Criteria orLine44EndBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line44_end between", value1, value2, "line44End");
            return (Criteria) this;
        }

        public Criteria orLine44EndNotBetween(BigDecimal value1, BigDecimal value2) {
            orCriterion("line44_end not between", value1, value2, "line44End");
            return (Criteria) this;
        }
    }

    /**
     * 该类对应数据库表 financial_assets_liabilities
     */
    public static class Criteria extends GeneratedCriteria {
        protected boolean andRelation;

        public boolean isAndRelation() {
            return andRelation;
        }

        protected Criteria() {
            super();
        }

        public void setAndRelation(boolean andRelation) {
            this.andRelation = andRelation;
        }
    }

    /**
     * 该类对应数据库表 financial_assets_liabilities
     */
    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean orValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isOrValue() {
            return orValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, boolean orValue) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
            this.orValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, boolean orValue) {
            this(condition, value, null);
            this.orValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, boolean orValue) {
            this(condition, value, secondValue, null);
            this.orValue = true;
        }
    }
}